
I just finished reading Accelerated C# 2008 by Trey Nash this weekend. The book is appropriately titled as it includes the fundamentals for novices and a fair amount of advanced material to satisfy the intermediate developer. Don't expect to see too many pages devoted to any one topic as this book covers everything from basic C# syntax to Lambda Expressions. For a language book, it was refreshing to see some mention of best practices for once. Just about all of the chapters are sprinkled with advice and tips relating to real-world scenarios.
The book is very readable (which is extremely important to me) and the author did a great job presenting his thoughts in a coherent manner (which is very difficult to do). Again, if you are looking for a detailed reference on the new features in C# 3.0 such as Lambda Expressions or LINQ, you may want to find another book. This book covers those topics, but I believe the primary goal of this book was to give novice and intermediate developers a quick refresher on all of the language features from versions 1.0 - 3.0.