Microsoft C# is a difficult language: its neither C, C++ nor Java, but looks similar to all three of them. It nevertheless provides an easier transitional path to .NET for people who know C or Java (for them, VB is completely new) – can APress’s Beginning C# 2008 show you the way?
The book starts out by looking at the basics of the .NET framework – what is CIL, why are things implemented the way they are and so on. The next two chapters look at variables and strings: this is not ideal for beginners, as it does not allow you to start coding immediately.
Afterwards, the book looks at exceptions and object-oriented programming. Generic data structures and delegates also get a chapter of their own. When this is done, chapters look at multithreading, data storage, databases and LINQ – every important piece of C# gets covered except for P/Invoke.
Christian Gross’s text structure is very “head-heavy”. Blocks start out with a bunch of code, which gets explained afterward: things like syntax samples are used rarely. This means that quite a bit of thinking is needed to get into some concepts, which means that casual reading is not as easy as it is with other books.
In the end, the Amazon price of 30$ voids further discussion – if you are interested in C#, you are unlikely to find a cheaper book which is not “just a reference”. Even though the text structure is not optimal for my taste, I nevertheless got everything I needed…