You should think of this book as of the second volume of the two-volume set on the 2005-Server SQL. If you get this one, you'll get the other one too; neither tome is self-sufficient; in fact there's a lot of explicit interdependence. This book, Programming, deals with slightly more esoteric features than the first tome, Querying -- although I can't say you must read the first entire volume before touching this one. Both books can be read at the same time (but see what I say about the target reader below).
So, real quick:
1. Target reader: someone with a good grasp of the 2000 Server wishing to learn the new stuff that came with the 2005 server (there's a lot: the 2005 product is _much_ better than the previous: covering new features is probably the only thing that's unequivocally good about this book). This is NOT your first, nor second, nor third book on SQL in general or MS SQL Server in particular. You must have a good grasp of the basics to be able to overcome this book. I say 'overcome' advisedly; more on it below.
2. Content: Data-type subtleties (datetime, xml, CLR user-defined types -- a lot of CLR in this volume); temporary tables, cursors, dynamic SQL, views, user-defined funcs, stored procs, triggers, a bit on transactions, exception handling, a bit on service broker.
3. Very clean technically: no technical errors (and while we're here: I found no typos either).
4. Depth vs breadth: the book is more extensive than deep, although on average it's (inevitably) more in-depth than the first volume. Some reviewers here say it's very deep or difficult -- and difficult is true, although not because of PhD anything. This, unfortunately, brings me to the next point:
5. Writing: ABHORRENT. (Both volumes, Querying, and Programming, in about the same degree). That's why it seems difficult, PhD and so on -- except this difficulty isn't due to, say, conceptual complexity of the subject matter. It's the authors' extreme inability to use the English language to explain things that makes reading this book such a chore. There is also conceptual muddle (unsurprisingly: people write as they think).
Now, experience taught me to forgive literary incapacity to a _technical_ author (to a degree; and I do take notice and, if possible, avoid him in the future). In cases like that I put the blame squarely on the publisher, especially if otherwise I know the publisher to be solid. I have a pile of books from Microsoft Press and I consider them a good publisher, so what's the matter?
Although (strangely) a bit better than the first volume, this book (Programming) is also strewn with unimaginable, fantastic garbage of every possible kind, from grating usage errors to a pervasive lack of unity, coherence, and logical connectedness on the page/paragraph level, to a frequent lack of the overall unity. When I bought this book and read it a bit I was so p-off I almost sent it back (I got as far as getting an RMA from Amazon). I did keep it though. Both of them, actually.
Do I recommend this book? It has been useful to me (especially the UDF section: there's a lot of new stuff, all very handy), so -- with great reservation, and only to the right reader -- yes, kinda. And please check out what else is available (there's tons of books on the 2005 server these days). The Programming book is part of the three-volume update and extension of the server-2000 version by Delaney. Delaney's server-2000 book was extremely useful and quite decently written. I wish they let her write the new version, even though it's now three books instead of one, and I suppose it's difficult for one person to do it all.