"Real-World Functional Programming" ...
... is a book by Tomas Petricek and Jon Skeet. It's terrific. It succeeds not just as an introduction to functional programming and F#, but also as a simply excellent programming text.
The reason it is superior is that the authors strived to teach concepts and the application of concepts, rather than simply convey the details and applications of a particular technology. I set out to do that with Windows Communication Foundation Unleashed, but never succeeded, so I appreciate the challenge they faced.
Readers will not only learn the ideas, but also get trained to see applications for them, as well as acquiring knowledge of the tools. This book is my candidate for the best programming book of 2010.