ASP.NET 2.0 Unleashed by Stephen Walther (who now has a blog on his site at http://www.superexperts.com)
I've been meaning to blog about this book since I started reading it a couple of months ago (it is my evenings and weekend reading book - too big for my commute reading).
First the obvious points: it is huge and the sample code in the book is in VB (C# code is included on a CD).
Since it is so big (and I'm a little strange in wanting to read it from cover-to-cover) I can't take it on my commute - so it is taking me awhile to get through this monster. About the code being in VB ... I look at it as a way to stay familiar with the language, since I know use C# from day to day. I figure in today's .Net world if you are a contractor or consultant you better be ready to code in either ... so no big deal.
I am now about halfway through the book and so far I would give it 5 stars. This is one of those books you will be refering to time and time again (instead of using google) becaue you know he has an example of exactly what you want to do. For example, this morning I am on Chapter 17: Using Navigation Controls. Say you need to do something with the Menu Control. He goes over and gives an example of how to add items declaratively, talks through how it works, then moves on to a practical example of making a tab control look using a menu and a multiview control. Then goes on to an example of binding a Menu Control to a SiteMapDataSource and then on to binding to an XML file. After the XML file he progresses to the options you have with using data from Sql server: build the menu items programatically or create you own SqlHierachicalDataSource with examples of both ...
I'm sure you now get the idea as to why this book is 1800+ pages, he covers the basics but also give a TON of practical examples. It takes alot of years of experience and knowlege to put together a collection of useful examples like this, really worth the money to get this book!