TCP/IP обеспечивает гарантированную доставку пакетов за счет скорости.
UDP обеспечивает быструю доставку пакетов, но требует больше усилий от разработчика.
Непосредственная работа с сокетами подходит для тех приложений, которые должны работать на разных платформах и тех случаев, кода требуется полный контроль.
DirectPlay хорошо использовать в том случае, если вы не хотите писать все самостоятельно.