UDP versus TCP

UDP does not guarantee that data will be received.

TCP can be thought of as a layer of abstraction on top of UDP which guarantees order of delivery - so under the hood there has to be retry logic etc.