Obydwa protokoły: TCP i UDP są obowiązującymi protokołami transportowymi. W zależności od wymagań aplikacji będzie używany, jeden z nich, a niekiedy nawet obydwa w tym samym czasie. Zatem to programiści muszą wybrać, który protokół transportowy będzie bardziej przydatny dla ich aplikacji.

Dla prawidłowego działania niektórych aplikacji, segmenty muszą docierać w specyficznie określonej kolejności. Niekiedy, całość danych musi zostać otrzymana, aby aplikacja mogła je użyć. W obydwu wymienionych przypadkach, protokołem transportowym będzie TCP. Przykładowo, aplikacje takie jak bazy danych, przeglądarki stron www i klienci poczty email, wymagają aby wszystkie dane, które zostaną przez nie wysłane dotarły do adresata bez błędów. Jakikolwiek brakujący fragment mógłby spowodować, że zmieni się sens przesyłanej wiadomości lub stanie się ona nieczytelna. Dlatego wymienione aplikacje zostały zaprojektowane do używania protokołu TCP. Oznacza to, iż dla tych aplikacji wymagany jest dodatkowy narzut w sieci.

W innych wypadkach, niektóre aplikacje tolerują pewne straty danych, podczas transmisji sieciowej, natomiast nie tolerują opóźnień. W tym wypadku protokół UDP jest lepszym wyborem, z mniejszym narzutem sieci. UDP jest preferowane w aplikacjach, takich jak strumieniowe przesyłanie dźwięku, wideo i głosu przez IP (VoIP). Potwierdzenia mogłyby spowolnić transmisję, a ponadto w tym wypadku, retransmisje są niepożądane.

Dla przykładu, jeśli jeden lub dwa segmenty transmisji video nie dotrą do celu, spowoduje to jedynie niewielkie zakłócenie w strumieniu. Może ono wyglądać na niewielkie zakłócenie obrazu, ale może nawet pozostać zupełnie niezauważone przez odbiorcę. Z drugiej strony, obraz w transmisji wideo mógłby zostać mocno zakłócony lub zatrzymany, gdyby host odbierający musiałby czekać na retransmisję zagubionych danych. W tym wypadku lepiej, by aplikacja renderowała w miarę możliwości najlepszy obraz z segmentów jakie w ogóle docierają, niż by zajmowała się gwarancjami dostarczania.

Radio internetowe jest kolejnym przykładem aplikacji, używającej UDP. Jeśli niektóre wiadomości zostaną utracone, podczas podróży przez sieć, nie są one retransmitowane. Jeżeli kilka pakietów zostanie utraconych, słuchający może usłyszeć przerwy w odtwarzanym dźwięku. Jeśli zostałby użyty protokół TCP i utracone pakiety zostałyby wysłane ponownie, transmisja mogłaby zostać wstrzymana do czasu dostarczenia utraconych pakietów, a zakłócenia mogłyby być bardziej zauważalne.