/// <summary> /// Starts this instance. /// </summary> public void Start() { listener.Start(); Console.WriteLine("Waiting for conections..."); Task task = new Task(() => { IClientHandler ch; while (true) { try { TcpClient client = listener.AcceptTcpClient(); ch = new ClientHandler(client); clients.Add(ch); ch.DataReceived += MoveToServer; ch.Start(); } catch (SocketException) { break; } } }); task.Start(); }