static async Task client() { try { Socket sock = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); await sock.ConnectAsync(new IPEndPoint(IPAddress.Loopback, 24444)); using (var ens = new EncryptedNetworkStream(sock)) { await ens.ExchangeAsync(); using (var read = await ens.ReadBlockAsync()) { Console.WriteLine(await read.ReadStringAsync()); using (var write = read.WriteBlock()) { write.WriteString("World."); } } } } catch (Exception ex) { Console.WriteLine("CLIENT: " + ex.Message); } }