Being able to read and write C programs goes a really long way.
Beej's guides are a good resource. I learned a lot from them.
Guide to network programming: https://beej.us/guide/bgnet/html/multi/index.html
Guide to Unix IPC: https://beej.us/guide/bgipc/
The Unix Programming Environment (Kernighan & Pike) is also very good.
http://files.catwell.info/misc/mirror/the-unix-programming-e...
A good exercise would be to write a simple IRC-like chat server and client in C.