Socket programming is not that hard, but thanks to Working With TCP Sockets, by Jesse Storimer, it’s easier than it has ever been.
Storimer presents socket programming using Ruby, a high level language, and explains how to do it using the native Ruby socket library. After learning the basics, you get to know how to use the higher level libraries such as TCPServer and TCPSocket, which are really easy to use.
The coolest thing of the book is that Storimer shows the relation between Ruby function calls and the sys/socket.h API. Therefore, you also learn a bit about the low level Unix socket API and how you might use it on C. The only con is that he doesn’t show any C code example, altough they’d be somewhat similar to the Ruby examples.
Book on Amazon: http://www.amazon.com/Working-With-TCP-Sockets-ebook/dp/B00BPYT6PK