UDP Header
In short: The header of a UDP packet — deliberately kept very lean, only 8 bytes in size.
In more detail: Contains only the source port, destination port, the length of the packet and a checksum. By comparison, the TCP header is considerably more extensive, because it additionally has to carry sequence numbers, acknowledgements and flow control information for the connection — exactly the overhead UDP deliberately leaves out.
In Depth
The structure of the UDP header:
+----------------+----------------+
| Source port | Dest. port | (2 bytes each)
+----------------+----------------+
| Length | Checksum | (2 bytes each)
+----------------+----------------+
| Payload ... |
+----------------------------------+
The TCP equivalent, on the other hand, comprises at least 20 bytes (often more with optional fields) and additionally contains a sequence number, acknowledgement number, various control flags (SYN, ACK, FIN etc.) and a window size for flow control — everything TCP needs for connection setup, reliability and preserving order, which UDP deliberately doesn’t include. For applications with many small, frequent packets (e.g. online gaming with many position updates per second), this difference in header size makes a noticeable difference to the total overhead.