LINQ represents a paradigm shift for developers used to an imperative/object oriented programming style, because LINQ draws on functional programming principles. Thinking in LINQ addresses the differences between these two by providing a set of succinct recipes arranged in several groups, Using the familiar "recipes" approach, Thinking in LINQ shows you how to approach building LINQ-based solutions, how such solutions are different from what you already know, and why they’re better. The recipes cover a wide range of real-world problems, from using LINQ to replace existing loops, to writing your own Swype-like keyboard entry routines, to finding duplicate files on your hard drive. The goal of these recipes is to get you "thinking in LINQ," so you can use the techniques in your own code to write more efficient and concise data-intensive applications.
Decent enough book, though I’m always a little dubious of a programming book that manages to misspell programming on the front cover! Could really have been called the LINQ Cookbook, since apart from an introductory chapter and a couple of appendices, it is basically a collection of recipes. The code formatting is a bit choppy in places, which can be a bit distracting, but otherwise the examples are complete enough that anyone should be able to follow them. Many of the recipes show a traditional example and the same code rewritten in the more functional style. One of the aforementioned appendices contains some really useful tips for making the most of lazy evaluation and getting the best performance, even where that sometimes means reverting to standard for loops.
The programming recipes and examples in this book are all interesting, the check list for efficient LINQ usage in the appendix is a great summary. But the book should have introduced each chapter with some general introduction and explanation of the LINQ operators used. I know that the target group is rather intermediate than beginning LINQ users, but even a casual intermediate user might appreciate such an intro to each chapter.