I have a lot of experience with C++ and have used many other languages (Java, Smalltalk, etc.). What is the best book to learn C# without having to be told what a variable is, what classes are, etc.? I'm specifically interested in C# 3.0 but books that only cover the older specs are also acceptable.
Coming to C# from C++ I just read MSDN: http://msdn.microsoft.com/en-us/library/kx37x362.aspx
Someone else may end up mentioning my own book, C# in Depth - but this isn't quite the book you're looking for. It only covers C# 2 and 3, without going through C# 1 to start with, and it doesn't cover the framework libraries (except for a bit about LINQ).
I think in this case C# 3.0 in a Nutshell may be your best bet. Of course, I'd love to recommend that you get C# in Depth after you've read your first C# book :)
I find the More Effective C#: 50 Specific Ways to Improve Your C# by Bill Wagner to be on the advanced side.
C# 3.0 in a Nutshell will get you up to speed pretty quickly and its an excellent reference.
You may also want to check this question.
A small, quick reference that is very helpful on the job. I've found it (well the original one) very helpful during my transition from Java to C#. It gave me a quick reference for the subtle difference between the languages.
It covers:
- Features new to C# 3.0, such as lambda expressions, anonymous types, automatic properties, and more
- All aspects of C# syntax, predefined types, expressions, and operators
- Creating classes, structs, delegates and events, enums, generics and constraints, exception handling, and iterators
- The subtleties of boxing, operating overloading, delegate covariance, extension method resolution, interface reimplementation, nullable types, and operating lifting
- LINQ, starting with the principles of sequences, deferred execution and standard query operators, and finishing with a complete reference to query syntax-including multiple generators, joining, grouping, and query continuations
- Consuming, writing, and reflecting on custom attributes
All that in an even more concise format than C# in a Nutshell
The book lives up to it's title. It's brief, but has everything you need to know and is easy to read.
The book has an innovative format: the main text on even pages, examples on odd pages. S
My personal suggestions are as follows:
Fantastic book focusing on the C# language rather than the .NET framework itself.
This is another excellent book that amazingly seems to be easy enough for relative newbies to C# to understand, whilst still providing enough depth for more experienced programmers.
A great reference-style book for C# 3.0 and the new features of the .NET framework 3.5.
i just switche from java to c# development and had a really nice time doing it because of the books i read.
first read Accelerated C# which is packed pretty tightly. i understood everything, but wasnt sure where to apply some of the advanced stuff that java doesnt offer. right after i finished reading it i started jon skeets C# in Depth which gave me what the title says. now i know when and how to use the advanced concepts and how they relate to each other and to the framework itself.
i really liked the combination of those two even if the overlap in some concepts, but thats just what makes it more clear to me.
I really recommend pro c# and the net platform, it's currently on it's forth edition covering Net 3.5
http://www.amazon.com/2008-NET-Platform-Fourth-Windows-Net/dp/1590598849
Check out my list of good recently published books related to .NET development:
I'm surprised this book hasn't been mentioned. It's unfortunately been roundly ignored, but I'm constantly referring to it: Advanced .NET Programming by Simon Robinson. It's out of print but you can get it on Amazon.