Normally our book reviews on InfoQ start at mostly positive and go up from there. But once in a while we come across a lemon, and WCF Unleashed is one of them. Written by four authors, the book reads as though all four authors voted on the words for each sentence.
The first chapter is dedicated to C# syntax introduced back from 2005. Then it mentions the Lightweight Transaction Manager from System.Transactions and Role Providers from System.Web.Security. Using phrases like "Evidently, it defines ten simple methods for managing roles", one must wonder if the manuscript got swapped with author's preliminary notes by accident.
Moving on, there is a long and rambling account of the history of COM, JAVA, .NET, and various terms which the author never really defines. There are however plenty of quotes and references to other papers and books. Not only are many of these quotes taken out of context, the author actually inserts bracketed words to change their meanings. For example, in a quote from Cwalina the author changes the passage from "and finally calling simple methods" to "'and finally [either] calling simple methods' or handling the instance's events". Other times the author feel it necessary to include references to back up claims such as "The Java Virtual Machine Specification defines a standard format for the output of compilers".
About halfway through chapter 2 is the introductory paragraph for the chapter explaining how it will detail how to use WCF. It does this using reasonably good examples and rather incoherent explanations. One of the most bizarre paragraphs is how the service needs to be hosted within an Application Domain and how Windows needs to initialize the Common Language Runtime for the service. Don't let the technical terms confuse you, essentially all the author is saying is the program won't work unless you run it.
Chapter three doesn't get any better. It includes a 5 page rant on "the XML Fetish", space that would have been better spent actually explaining how the DataContract and DataMember attributes are supposed to be used.
Chapter four has some topics that look promising, such as one on session management. However, the totality of the text is this sentence.
To better manage the resources associated with a session, developers can stipulate which operation may be invoked to initiate a session and which operations signal the end of a session.
That's it, the rest of the topic is just a code snippets without any details describing which attributes are important or how to use them.
The next chapter starts the book on Windows Workflow Foundation. That's right, we have just barely got started and we are pulled into a discussion on a completely unrelated technology. And that's where we are going to end this review.
In conclusion, if you are looking for a good starter book for WCF, this isn't it but it will work in a pinch. If, on the other hand, you want a reference manual or an in depth explanation for how WCF actually works, this book is completely useless.
Windows Communication Foundation was written by Craig McMurty, Marc Mercuri, Nigel Watling, and Matt Winkler. It was published by SAMS and retails for 49.99 USD.