So Far I know CLR via C# is considered one
I am not sure if there will ever be a truly classic book for technologies like .Net. Books by Jeffrey Richter are awesome. No doubt about it.
But, with the ever changing technological landscape, todays favorite technical book might be worthless after 2-3 years.
I will only put books like Code Complete in the true classics category.
I've found the "Essential C# 2.0" to be invaluable, both as an introduction, and as a reference.
I would say that for ASP.NET, Fritz Onion's original "Essential ASP.NET with Examples in C#" used to be considered the book on the subject, at least for those that really wanted to know what was going on under the hood. Of course, that is now outdated. :)
I concur with @Gulzar though: today, technology changes too fast for platform\language\etc books to be considered "classics" in the sense that K&R used to be considered a classic.
My two favorites (apart from the aforementioned "CLR via C#", which is essential):
Adam Nathan's .NET and COM: The Complete Interoperability Guide (aka "the blue book") is massive and authoritative. If you need it, you really need it.
John Robbins' Debugging Microsoft .NET 2.0 Applications is a great introduction to the arcane mysteries of WinDbg and SOS for .NET developers. If you want to debug like the real pros, read this book first.
It's more of a niche item, but those (unfortunate) few who have to write C++/CLI code that interoperates with native C++, Marcus Heege's Expert C++/CLI: .NET for Visual C++ Programmers is essential.
Well, not to be too formal but surely The C# Annotated Standard has to get some cred - apparently it's the book that sits on the desks of C# team members. Oh and while we're on the subject of hardcore C# books, The C# Programming Language surely has to get a look in too!!
I agree with Gulzar that the CLR is too dynamic to have "classical" books describing it.
But if you wanted to delve deeper into the CLR you might consider Shared Source CLI 2.0 Internals and of course the specs.
If I think of Classic in terms of highly acclaimed and having enduring value, then the .NET classics I could think of are really the books that describe good principles but give .NET examples:
- Jimmy Nilsson, Applying DDD and Patterns
- Code Complete mentioned already
- At a stretch, Martin Fowler's Patterns of Enterprise Application Architecure contains some C# examples
There aren't any.
A classic has got to be reasonably old, I would argue at least ten years, and still in the public eye. The Gof Design Patterns book is a classic (though I hate it) as is Code Complete.
.NET has some must-reads like Framework Design Guidelines, but no true classics.
I consider .NET classics (books I would recommend to anyone new to .NET):
- Jeffry Richter - CLR via C#
- Adam Nathan - .NET and COM: The Complete Interoperability Guide
- Juval Lowy - Programming .NET Components, 2nd Edition
- Jesee Liberty - Programming C#, 2nd Edition