The book starts off going through some basic OO ideas and makes a reasonable job of it. However, even during the early stages it becomes apparent that the book suffers somewhat from all the hype around .NET in general and C# in particular.
C++ is given the usual knocking of not being a 'true' OO language - unlike C# of course... It becomes apparent that the author cannot have an in-depth grasp of C++ with such remarks as calling
couta function (as in '
cout value;' in two separate places), the
iostreamheaders used are pre-standard library and the author claims that C# is better because it provides a
foreach, unlike C++! I can only assume that the author has been looking elsewhere than C++ these past five years or so, which is a shame as such weak/incorrect arguments undermine the valid points he makes.
The book is a lot thicker than it needs to be due to much re-printing of exactly the same source code (sometimes over 2 sides) where only one line has changed! The .NET SDK is used throughout rather than the latest Visual Studio .NET installation, which makes life somewhat easier, although Francis's comment in an earlier edition of C Vu still stands; as a CD is included with the book, why couldn't the SDK be included on the CD instead of expecting each individual to download it?
The depth of the subject matter convinced me that this book does not really belong in the 'Inside' series from Microsoft Press, but is rather more of a C# primer. If it were entitled as such, then it does the job well. However, areas such as providing web services through C# are untouched - which is odd as the main thrust of .NET (and thus one of the main reasons for C# coming into being) is all about web services.
This book will not enable you to go and write the next generation of web services but it will give you a good grounding in C#. The examples are clear and well-written and serve to provide a good, fundamental understanding of the C# language. That said, I would have expected a book entitled 'Inside C#' to have taken me to a much higher level of writing C# services.
In summary; though suffering from some of the .NET hype, the book does a good job of giving a thorough grounding in writing C# applications but should be considered in the light of a C# primer rather than a full-blown, in-depth expose of writing for .NET with C#.