views:

337

answers:

6

Simple question. Many consider "The C++ Programming Language" by Bjarne Stroustrup to be the de facto for learning advanced C++. What is the equivilent book for learning C# to the most advanced level?

+3  A: 

IMHO I don't think there is an equivalent book for C# at the moment. Partly, this could be due to the (fast) pace at which the language is evolving, or due to implementation specialization (e.g. a specific C# focus when implementing WCF, WPF, ASP.. et al).

RobS
A C# book should not spend much words on WCF, WPF and other library components. nbolton did not ask for a .NET book.
Henk Holterman
I was actually trying to explain why I felt there was no equivalent text.
RobS
I think both of you have valid points; but, excellent strength with C# and not-so-excellent .Net experience seldom go hand in hand.
nbolton
+8  A: 

take a look at "The C# Programming Language" by Anders Hejlsberg, as he is the creator of C#.

Shnitzel
+3  A: 

I'm fond of The CLR via C#, though I read an earlier edition. It digs deep into the design of the CLR and helped me to understand the reasoning behind it. C# is designed to allow you to express your intentions for what you'd like the CLR to do, but it's really the CLR that makes .NET what it is. This, in turn, has helped me to understand C# more fully, since its various nuances reflect its underlying purpose, much as Stroustrup had specific purposes in mind for C++.

Dan Bryant
+2  A: 

I'll repost the language spec, since the first person to post this deleted it.

Probably the C# language specification - get it here.

You may think it's too dry, but in this case the spec is surprisingly approachable. The dead tree edition is here:
http://www.microsoft.com/MSPress/books/5490.aspx

Joel Coehoorn
+10  A: 

As others have said, the bound annotated specification is pretty similar to books like Stroustrup's. It is perhaps less of a tutorial, but it is quite thorough. Annotations are by me and a whole bunch of other people who allegedly know what they're talking about. :-)

If you want a good in-depth background on C# that is more tutorial-like, try the aptly-named C# In Depth by Jon Skeet.

If you want a good book that more emphasizes the essential bits you need to get the job done, try the aptly-named Essential C# by Mark Michaelis.

I was technical editor for both books and recommend both unreservedly.

Eric Lippert
+1 for Skeet's book. I think you may earn SO reputation just by opening it.
Ben Voigt
+1 for Essential C#, look's great.
DMan
Another +1 for listing *C# In Depth* by @Jon Skeet.
stakx
Just pre-ordered C# in Depth, Second Edition (Paperback), purely on the basis that it was written by Jon Skeet. Heh, didn't know he worked at Google London!
nbolton
A: 

Not sure it is relevant but I think MSDN Library is good for C# or any Microsoft related technology as such.

Rachel