System.Net.Sockets.SocketException (0x80004005)
A SocketException is thrown by the Socket and Dns classes when an error occurs with the network. Most of the time these are connectivity issues due to different IP protocols (IPV4/IPV6) between the two server/computers trying to communicate or extra authentication rules setup on one of the computers for in/out connectivity.

Ways to troubleshoot the issue are, check you have proper internet connection is there on your machine or not, and you are able to ping the remote server or not. Possible causes for the error:
- You are using the wrong IP address.
- You are using the wrong port.
- Firewall blocking the connection.
Third-party application
This SocketException means that the remote side closed the connection (usually by sending a TCP/IP RST packet ). If you're working with a third-party application, the likely causes are:
- You are sending malformed data to the application (which could include sending an HTTPS request to an HTTP server).
- The network link between the client and server is going down for some reason.
- You have triggered a bug in the third-party application that caused it to crash.
- The third-party application has exhausted system resources.
It's likely that the first case is what's happening.

In some cases, if you try using the IP 127.0.0.1, it might work.
- C# Crystal Reports Tutorial
- CSharp Communication Tutorial
- Threading in C#
- C# Ado.Net Tutorial and Source Code , c# database programming tutorial
- C# ADO.NET data Providers Tutorial
- C# Dataset Tutorial
- C# DataAdapater Tutorial
- Csharp DataView Tutorial
- Csharp Remoting Tutorial
- C# XML Tutorial
- C# DataGridView Tutorial
- C# Advanced Topics