Сокеты в .NET
Пространство System.Net.Sockets имен содержит управляемую кроссплатформенную сетевую реализацию сокета. Все остальные классы для доступа к сети в пространстве имен System.Net основываются на этой реализации сокетов.
Класс Socket — это версия управляемого кода служб сокетов, предоставляемая на основе собственного взаимодействия с Linux, macOS или Windows. В большинстве случаев Socket
методы класса просто маршалирует данные в собственные аналоги и обрабатывают все необходимые проверка безопасности.
Класс Socket
поддерживает два основных режима, синхронные и асинхронные. В синхронном режиме при вызове функций, выполняющих сетевые операции (например, SendAsync и ReceiveAsync), ожидается завершение операций, прежде чем управление возвращается вызывающей программе. В асинхронном режиме вызовы возвращаются немедленно.