I just finished reading Visual C# 2005 Recipes, A Problem - Solution Approach, from Apress and I absolutely love the book.
This is the first book I have read that uses a cookbook style approach of presenting many common development problems and their solutions. Although I cannot compare it to books with similar styles, this book rocks for 3 reasons:
1) It has a lot of examples on numerous subjects, which means you will find plenty of samples that you can relate to and learn from.
2) The authors do an excellent job of explaining how the code works and the technologies involved so that you know both the code and the reasoning behind it.
3) It maximizes content by only providing samples in C#, which means you have a wonderful, light-weight reference manual with easy-to-find problems and their solutions.
If you don't have a book like this for C# and you could benefit from numerous code samples to solve problems and learn about new technologies, you will appreciate this book.
Discussions
The problems and their solutions presented in the book are useful in day-to-day development as well as a great way to learn about technologies for which you are not familiar.
For example, when I was playing with the Cryptography Application Block in Enterprise Library 2.0, I needed to get up to speed on topics like DPAPI and SecureString. Visual C# 2005 Recipes provided a very nice intro to these topics that explained the reason for using them, a little bit of theory on Cryptography, and code examples on using them in C#. This is exactly what I needed to get me started.
I just finished a tutorial, called Open-Closed Principle - IFormattable, IFormatProvider, ICustomFormatter, that talks a lot about using IFormattable to provide different string representations of a type. I didn't know it at the time, but there is an example of this in the book, called Implement a Formattable Type.
In another tutorial I just wrote, called Using Reflection and Attributes for Late Binding in Your .NET Classes, I talked a bit about creating Custom Attributes. Visual C# 2005 Recipes has a recipe about Custom Attributes, called Create a Custom Attribute.
Karl just wrote an excellent post, called Understanding and Using Exceptions, that helps developers avoid the pitfall of catching System.Exception. He mentions he didn't get a chance to talk about creating custom exceptions. Well... there is an example of creating a custom exception class in the book, called Implement a Custom Exception Class :)
There are many more examples like this in the book that are useful. No doubt some recipes will be second nature to you. Others you will probably never use but enjoy reading just because reading about technology is fun. Some recipes you will imagine using in the near future. And some will get you looking and possibly changing code you have already written :)