title: Network Discovery of an application for peer to peer network
body: <p>I wish to have two classes, a server class and a client class.  The server class should recieve the IP address and Port number of each new client and store them in a list.  It should supply each of the clients with a list of connected clients and their IP addresses.  The clients could then communicate with each other using TCP connections.</p>
  
  <p>The catch is that the clients won't know what the IP address of the server is.  The entire program will however run on a local area network.  My guess is that it needs some sort of UDP broadcast, but every time I try to impliment this it doesn't work unless the two instances of the program are running on the same computer.</p>
  
  <p>The application would be installed by clients with limited computing knowledge so it should just be a case of installing the program on all the computers and plugging in to the network.</p>
  
  <p>If anyone has a reliable, clear implimentation of this using C#.net 3.5 or earlier it would be much appreciated.</p>