public ServerProgram() { serverData = ServerData.LoadData(); IPHostEntry ipHostInfo = Dns.GetHostEntry(Dns.GetHostName()); IPAddress ipAddress = ipHostInfo.AddressList[0]; try { server = new TcpListener(IPAddress.Loopback, 667); server.Start(); while (true) { TcpClient tcpClient = server.AcceptTcpClient(); Task receiveServerData = new Task(() => ReceiveServerData(tcpClient)); receiveServerData.Start(); //server.BeginAcceptTcpClient(new AsyncCallback(OnConnect), null); //allDone.WaitOne(); //Console.WriteLine("Client has connected"); } } catch (Exception e) { e.ToString(); } }