.Net 2.0+ Essential Reading

People keep asking me to recommend a good book for learning C# or understanding the .Net Framework. But in general there are two problems with programming books:

a) There are far too many out there (making it hard to ferret out the good ones).

b) Most of them are too long and verbose (resulting in a lot of wasted time poring over each one to find what you need to know).

What I decided to do is put together a list of what I consider the very best books related to C# and the .Net Platform. If you’re like me, you’ve got a few other things to do other than read books, as enjoyable as that might be J. So I limited myself to just one book per category – written by who I consider to be the most authoritative author on the subject, providing a deep level of understanding about what .Net is doing under the covers.

Part A: Learning C#

Personally I think one of the best ways, although not the only way, to learn C# is to go through a very concise tutorial, practicing each feature along the way by writing small snippets of code. A great tool for accomplishing this is not a book but an online tutorial, available on the DevelopMentor web site. If you’d rather read a book, “C# Precisely” is the most concise one out there on the topic.

1.DevelopMentor: Online C# Tutorial
You’ll need to register, but it’s free
·Includes quizzes and exercises

2.Peter Sestoft, Henrik Hansen: C# Precisely
Available on Amazon
Super concise compendium of the C# language
> Recommended by Anders himself!

Part B: CLR and C# In-Depth

Jeffrey Richter, one of my favorite authors, does a terrific job taking an in-depth view of the CLR through the lens of the C# programming language.

1.Jeffrey Richter: CLR via C#, 2nd Edition
Available on Amazon
In-depth examination of the CLR with examples in C#

Part C: .Net Framework Overview

Most C# development entails programming against the Foundation Class Libraries (FCL) in the .Net Framework. With thousands of classes, the task can seem overwhelming, so you need a competent guide, and Andrew Troelsen is a good one.

1.Andrew Troelsen: Pro C# 2005 and the .NET 2.0 Platform, 3rd Edition
Available on Amazon
Help navigating the maze of classes comprising the FCL

Part D: Best Practices

It’s not enough to know how to write C# code and have a familiarity with the base class libraries in the .Net Framework. You also have to know what best practices to employ. The undisputed Jedi master in this area is Juval Lowy. In addition to his book, I’ve also listed his C# coding standard and a link to download and import his set of Visual Studio settings.

1.Juval Lowy: Programming .Net Components, 2nd Edition
Available on Amazon
Must-read for every developer!

2.Juval Lowy: C# Coding Standard
Available from IDesign.net
The de facto standard for writing C# code

3.Import Visual Studio Settings
Available from TonySneed.com
Tools, Import and Export Settings, Import Selected Environment Settings
·Check “All Settings” twice to select omitted items

Part E: Rich Client (Windows Forms, WPF)

The smart, rich client is back! (Slimmer and more fit than the old “fat” client.) There are two technologies you’ll need to become familiar with. The current one is Windows Forms, and the one coming ‘round the corner is Windows Presentation Foundation (code named Avalon). The top guru here is Chris Sells, along with his co-writers.

1.Chris Sells, Michael Weinhardt: Windows Forms 2.0 Programming, 2nd Edition
Available on Amazon
Definitive book on Windows Forms programming

2.Chris Sells, Ian Griffiths: Programming Windows Presentation Foundation
Available on Amazon
This is the first significant “Avalon” book out. Stay tuned for two more, one by Chris Anderson and another by Charles Petzold.

Part F: Web (ASP)

This was a tough one for me. Fritz Onion’s book is a “classic” (even though it’s just three years old!) that every .Net developer should read to grasp the basic architecture of ASP.Net. There have been some changes with version 2, so be sure to stay abreast by reading MSDN magazine.

1.Fritz Onion: Essential ASP.NET With Examples in C#
Available on Amazon
A bit outdated, but great for understanding how ASP.Net really works.

2.Aaron Skonnard: Run ASMX Without IIS (MSDN Magazine Article)
MSDN Magazine: Dec 2004
In this article Aaron talks about how to use Http.Sys and the new HttpListener class.

Part G: Data (ADO, SQL, XML)

For a generic book on ADO, SQL Server and XML, the best one I’ve personally come across is co-authored by Mark Fussell, who works for Microsoft and oversaw the development effort on version 2. Besides that, he gave me a free copy when I met him last Spring in Redmond. For a terrific book on the more pragmatic aspect of actually binding data to Windows Forms controls, I recommend the one by Brian Noyes.

1.Mark Fussell: ADO.NET and System.Xml v. 2.0
Available on Amazon
A bit outdated, but the best I know of for understanding how ASP.Net really works.

2.Brian Noyes: Data Binding with Windows Forms 2.0
Available on Amazon
A bit outdated, but the best I know of for understanding how ASP.Net really works.

Part H: Messaging (WCF)

Windows Communication Foundation will subsume just about all of the current messaging technology stacks, including ASP.Net web services, Remoting, Enterprise Services, and Web Service Enhancements (WSE, WS-*). But because it hasn’t yet been released, there aren’t many books out. So although I hate to recommend a book I haven’t yet read, I’m willing to take a gamble on Michele Bustamante after having sat through a class taught by her. She’s one smart cookie.

1.Michele Bustamante: Windows Communication Foundation
Available (soon) on Amazon
Due out in May 2006

So I got the list down to 10 books. Not bad. When searching for “C#” on Amazon, I got 442 hits; when searching for “Microsoft .Net”, I got 1106. I can guarantee you most of those books are out of date or duplicating one another. I can also guarantee most of them are a lot of fluff and are not worth your time. But if you only have enough time to read ten books, these are ten I can recommend that are worth reading. What else were you planning to do on your vacation to Cancun?

About Tony Sneed

Sr. Software Solutions Architect, Hilti Global Application Software
This entry was posted in Technical. Bookmark the permalink.