Вы можете имитировать вещи, но на самом деле нет причин для этого. Либо вы хотите надежную доставку или вы хотите своевременную доставку. TCP дает вам первое, UDP дает второе. Эти два не могут смешаться, потому что TCP реализует надежность, постоянно сообщая другому концу о сообщениях, пока они не будут подтверждены. Для потоковой передачи обычно требуется надежная доставка данных (чтобы вы могли повторно собрать поток), но для небольших сообщений, где порядок не важен (например, дейтаграммы), вам не нужны все эти издержки (UDP в значительной степени гарантирует, что сообщения в по крайней мере не прибудет искаженным, это одна из вещей, которые TCP и UDP предлагают по сыром IP).
Есть, конечно, и другие интересные случаи между этими двумя крайностями. Для потоковой передачи данных в режиме реального времени (например, видеовызова) вы используете RTP , потому что вы используете потоковую передачу, но можете восстанавливаться после потери данных лучше, чем с задержкой. Для сообщений, которые слишком велики для UDP (64 КБ - это строгая верхняя граница, поскольку заголовок UDP имеет только 16 битов для своего поля длины), вам почти все равно нужно использовать TCP для транспорта, чтобы можно было повторно собрать фрагменты (следовательно, SOAP проходит через HTTP через TCP, а не через UDP).