C# network programming - Blum, Richard (Sybex, 2003)