private void pbConnect_Click(object sender, EventArgs e) { AcceptConnexionDelegate acd = new AcceptConnexionDelegate(AcceptConnexion); acd.BeginInvoke(null, null); } private int GetPortNumberValue() { return Convert.ToInt32(txtPortNumber.Text); } private delegate int GetPortNumberValueDelegate(); private delegate void AcceptConnexionDelegate(); private void AcceptConnexion() { Socket CurrentClient = null; Socket ServerSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); int port = (int)txtPortNumber.Invoke(new GetPortNumberValueDelegate(GetPortNumberValue)); ServerSocket.Bind(new IPEndPoint(ipAddress, port)); ServerSocket.Listen(10); }