Crear un cliente y un servidor TCP/IP con PowerShell (hacerlo de forma simple)

Servidor

System.Net.Sockets.TcpListenerRealiza escuchas para conexiones de clientes de red TCP. 

StreamReader implementa un TextReader que lee los caracteres de una secuencia de bytes en una codificación determinada.

##Server
$ip=[IPAddress]"0.0.0.0"
$TcpListener=New-Object System.Net.Sockets.TcpListener (New-Object System.Net.IPEndPoint($ip,"2050"))
$TcpListener.Start()

while($true)
{
$mensaje=(New-Object System.IO.StreamReader ($TcpListener.AcceptTcpClient().GetStream())).ReadLine()
$mensaje
}
$TcpListener.Stop()

Cliente

TcpClient proporciona métodos sencillos para conectarse, enviar, y recibir transmitir datos a través de una red en modo de bloqueo sincrónico.

StreamWriter implementa TextWriter para escribir los caracteres de una secuencia en una codificación determinada.

##Client
$ip=[IPAddress]"127.0.0.1"
$TcpClient=New-Object System.Net.Sockets.TcpClient($ip, "2050")
$mensaje=New-Object System.IO.StreamWriter $TcpClient.GetStream()
$mensaje.Write("hola")
$mensaje.Dispose()