Hi all,

I'm new on this site and was hoping some of you more experienced coders could give me some advice. I'm a long time IT guy, always loved programming but never got too deep into it.

I know the basics of programming in .Net and C# but I would like to be able to do some raw network programming - packet analyzing, sockets programming, reverse engineering - this kind of thing really interests me.

I am a very quick and independent learner and love to soak up new things. Now I don't have money for classes, but I can definitely afford a few books.

So...how do you all recommend I go about practicing this stuff? I've already begun finding random sockets programming tutorials online but none are great. Also I've been doing alot of packet analyzing with WireShark but I don't feel comfortable enough to say I understand exactly what's going on.

Thanks alot for taking the time to answer :)

Welcome @noamo48 on board.

I'd suggest MSDN. This is a good place to start and what about WCF (Windows Communication Foundation)? I think you never wanted to give up learning WCF!

I've read Tcp/IP socket.. (suggested by Danny in prev. post) is good book indeed! and have a look at another book - Network programming in .Net.

For WCF, I'd like to suggest - Programming WCF Services book and visit - IDesign.


Good articles/tutorials at Nito Programming.

Edited 5 Years Ago by __avd: Edit post to add a link.

Thanks this is a great start. I am already beginning to read this TCP/IP Sockets programming book.

Could you please tell me what kind of advantages WCF holds over traditional sockets programming? And what is its primary purpose as far as today's developers are concerned? I've heard from a programmer friend that WCF is dead and even Microsoft has abandoned it and begun working on a newer technology.

>Could you please tell me what kind of advantages WCF holds over traditional sockets programming?

Sockets are very low level and faster but require much more work - We have to create own protocol, transfer array of bytes and perfrom serialization in case of objects and so on.

In the base of WCF there is socket programming. In WCF lots of work is already done so, we just need to select and configure - For example, Protocols are already figured out. Enhanced message serialization and message passing technique, and most importantly security features are added.

This question has already been answered. Start a new discussion instead.