- TCP гарантирует доставку пакетов, последовательности и без потерь, UDP ничего не гарантирует.
- TCP нумерует пакеты при передаче (порядок доставки данных), а UDP нет
- TCP работает в дуплексном режиме, в одном пакете можно отправлять информацию и подтверждать получение предыдущего пакета.
- TCP требует заранее установленного соединения, UDP соединения не требует, у него это поток данных.
- TCP Сокет может вернуть не все данные а только часть. Чтобы получить все данные нужно читать до упора (до закрытия коннекта в вашем случае)
- TCP надежнее и осуществляет контроль над процессом обмена данными.
- UDP обеспечивает более высокую скорость передачи данных.
- UDP предпочтительнее для потоковое видео, видеофонии и телефонии, сетевых игр, передача DNS зон, в Active Directory, там не требуется надежность.
- UPD не содержит функций восстановления данных