Sockets en .NET
El espacio de nombres System.Net.Sockets contiene una implementación de red de sockets multiplataforma administrada. Las demás clases de acceso a la red del espacio de nombres System.Net se basan en esta implementación de sockets.
La clase Socket es una versión de código administrado de los servicios de socket proporcionados según la interoperabilidad nativa con Linux, macOS o Windows. En la mayoría de los casos, los métodos de la clase Socket
solo serializan los datos en sus equivalentes nativos y controlan las comprobaciones de seguridad necesarias.
La clase Socket
admite dos modos básicos, el modo sincrónico y el modo asincrónico. En el modo sincrónico, las llamadas a funciones que efectúan operaciones de red (como SendAsync y ReceiveAsync) esperan a que finalice la operación antes de devolver el control al programa que realiza la llamada. En el modo asincrónico, estas llamadas vuelven inmediatamente.