Here are three books that I would recommend to you as a beginner/novice programmer looking to introduce yourself to network programming. If you are already familiar with the language, then you are halfway home. If you have previously written networking applications, then these books will do nothing more than provide a refresher with simple to moderately complex examples of some of the basic or common networking protocols.
Things such as sending emails using SMTP, FTP, HTTP are covered, but not in depth. More to the topic are things such as the types of sockets, blocking vs. non-blocking, stream vs. datagram vs. raw sockets. All in all only having read the last one, I would recommend it to anyone interested in programming sockets using C#. It won't do you wrong, unless you are already a wiz!
C# Network Programming ISBN: 0782141765
Network Programming for the Microsoft .NET Framework ISBN: 073561959X
Professional .NET Network Programming ISBN: 1861007353
This was first published in November 2004