How to troubleshoot your System.Net code

Sytem.Net tracing
One of the easiest ways is to use the built in System.Net tracing. It is a matter of copiying a config file to your machine and re-running your application. Here is a very detailed article on how tracing works and how to enable it.
https://blogs.msdn.com/dgorti/archive/2005/09/18/471003.aspx

NetMon capture 
The other way is to sniff the network traffic using NetMon, Ethereal, or etc. Here is how you can do it with NetMon
https://blogs.msdn.com/dgorti/archive/2005/10/29/486887.aspx