I recently talked to a customer who thought he was a bit "tunnel-visioned" as a .NET developer and wanted a few books that weren't so tunnelled as well.

After all, developers naturally focus on parts of .NET that help them get their job done everyday. In the process, it's easy to lose sight of the overall architecture to fully take advantage of the underlying platform; one can have no real idea how everything works under the hood and, more importantly, if there is a fundamentally better approach to the problem that's a lot more productive, performant, and extensible/maintainable.

While developer books out today can be rather fluffy, I think a couple of .NET books stand out tall from the rest. The top 2 would have to be Jeffrey Richter’s CLR via C# and Juval Lowy’s Building .NET Components. They are simply the best of kind, bar none. If you're looking to take your .NET development to the next level, give them a read. They just might be the vision correction you were looking for.