Console.Write("Enter IP: "); string ip = Console.ReadLine(); Console.Write("Enter port: "); string port = Console.ReadLine(); Socket sock = new Socket( AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); sock.Blocking = true; sock.Connect(new IPEndPoint(IPAddress.Parse(ip), Int32.Parse(port))); Console.WriteLine("Receiving file..."); List file = new List(); byte[] curByte = new byte[1]; while (sock.Available != 0) { sock.Receive(curByte); file.Add(curByte[0]); } Console.WriteLine("File received"); byte[] finalFile = new byte[file.Count]; for ( int i = 0; i != finalFile.Length; i++ ) { finalFile[i] = file[i]; } File.WriteAllBytes(Directory.GetCurrentDirectory() + "\\file", finalFile); Console.WriteLine("Press [ ENTER ] to exit"); Console.ReadLine();