Edinburgh Castle
C# 3.0 Pocket Reference
AuthorsJoseph Albahari & Ben Albahari
ISBN 100-596-51922-2
DateFebruary 2008
ReviewerAndy Scott
Cover image for C# 3.0 Pocket Reference


As a reference for the features of the core language for C# this book performs as advertised. The information presented is neither too shallow nor overwhelmingly detailed and pedantic.

As a "pocket" book I fear many readers will need to get bigger pockets :-) But the language itself is rather large and complex, the book does not add to this but does serve as a good map through the C# jungle.


The actual layout of the information presented within the book is not always best suited to getting all of the relevant information about a given item very quickly or easily. This is especially the case for the section on "Classes" where a focused set of bullet points would have put across the fundamentals quickly and concisely for those readers coming from other languages, as it is you must read 6 sections to obtain the information.

The book is touted as targeting both existing C# developers and those coming from a C++ or Java background but I fear the rather diffuse organisation of the information relating to core OO concepts will hinder them some what. The LINQ section seemed to be the most focused on a single topic that would be useful straight away if someone had a specific query they wished answered. The organisation may be better suited to an existing C# developer, maybe one looking to quickly get a feel for what is new in the 3.0 over existing versions

The first sections of the book seemed a rather mixed bag. The very first delving into some rather arcane new concepts about lambda functions before it had even presented the obligatory "Hello World" style program (though in this case it was one to show 12*30). The following laboured over basic types and the such like. Certainly this information could have been easily presented in a series of tables and left at that. The book is after all a reference and not a "My First C# Book". The "Compilation" section misses the fact that it is likely that the tool mentioned will exist multiple times - likely once each for each version of the .NET framework installed; unlikely to cause confusion to an existing C# developer but to a newbie an early irritation and mis-direction.

Those complaints aside the book does provide an easy and concise reference to the core language of C# that is a definite aid. Coming from another language it would serve as a better entry to C# than any of the "My First C#" books as it focuses on the language and how its syntax and features are to be used than how to program.

It will definitely be stying on my desk within easy arm's reach for future projects.


Page 21 Numeric Types - the table is incorrect in that it has the "Integral - unsigned" above the limits for the "Integral - signed" types and vice-versa.

faded separator

Page maintained via github.com/edinburgh-pm/edinburgh.pm