This great new class (System.Net) makes a lot of common network operations very easy.  If you have ever wanted to be able to detect if the network was up, it really was quite difficult.  Now, the NetworkInterface class makes this simple.  To determine if you have a network connection simply call the GetIsNetworkAvailable() method.  Want to know what speed the network card is?  Just access the Speed property.  Want to know what network cards are in the computer?  Make a call to GetAllNetworkInterfaces().  This class makes things that used to be very difficult really quite easy. 
The NetworkInformation namespace provides a ton of information about the network.  You can ping clients and you can also have events fire when there is a change in network availability.

Read the complete post at