TCP — надёжный, с установлением соединения, гарантирует порядок и доставку. UDP — ненадёжный, без соединения, не гарантирует ничего. TCP: handshake, retransmission, flow control, congestion control — много overhead. UDP: просто отправляет датаграммы — быстро, но пакеты могут потеряться, прийти не в порядке или дублироваться. TCP для HTTP, gRPC, баз данных — где нужна надёжность. UDP для DNS, видеостриминга, игр, VoIP — где важна скорость и допустима потеря. QUIC (HTTP/3) построен поверх UDP с собственной надёжностью.