I'm disappointed by this book and I think there's lots of room for improvement.
The introduction says this book is for beginners but realistically, that's not the case. I've been programming for several years in ASP Classic and ASP.NET MVC is a major shift in comparison. To me, this book often feels as though it's written for an experienced programmer that's coming from using recent iterations of ASP.NET as well as Entity Framework.
This book tends to cover things in small fragments which means you don't get to see the code as it looks in the bigger picture. It's true that the way you program in ASP.NET MVC tends to be lots of small files and small classes, like a puzzle with many pieces. But the code examples in this book basically never show you the whole file.
This is not a step-by-step guide, or learn by example book. In several early chapters you are led to believe that you might be building an application from beginning to end. But that simply isn't the case.
Just like almost all the books and tutorials I found on ASP.NET MVC, this book uses a built-in Application Template as well as Scaffolding Templates for views (chapter 4). This allows for a shorter book but leaves the beginner feeling confused about how to build things from the ground up. My experience has taught me to be skeptical of wizards, default templates, etc., and so far my experience following this book and other tutorials has proved my skepticism to be accurate. It could be argued that templates allow you to quickly build something that works and then from there you can reverse engineer (or simply deduce) enough to build your own. I personally don't find this approach to work for me.
Chapter 4 on Models is probably one of the most important chapters for beginners and it's far too brief and also too abstract. There are no examples of splitting your models up into Data Models, View Models, and Input Models. They use Entity Framework but are really brief on this so you really need to have experience with Entity Framework Code First, which brings me to something else. I'm not a fan of pure Code First. I don't mind the Code part but I prefer to design my own database and then mark up my Data Models with Attributes to coincide with my database (or use the Fluent API to configure). The idea of having my code create (and recreate) my database as well as seed it with data just doesn't make a lot of sense to me. It works wonderful in books, tutorials, and examples where you don't want to have to go to all the work of creating a database and seeding it. However, this isn't true to life. It's very impractical when it comes to websites and web applications. And it simply leaves the beginner confused. I believe a Code First-Database First hybrid approach is the best. This book uses pure Code First.
Chapter 9 on Routing is very necessary because default routing probably won't be good enough for you, specifically if you care about things like SEO friendly URL's, removing unnecessary "Actions" for read only controllers, etc. But I ended up learning how to do routing from other resources. Only after I learned it elsewhere could I come back to this book and make any sense out it. In a step-by-step example style book there are many topics from chapter nine that likely would have occurred early in the book.
Chapters 10 to 16 are quite advanced and seemed to barely fit in with the topics covered in this book. These chapters cover things like NuGet, the new ASP.Net Web API, Dependency Injection, Unit Testing, Extending default MVC classes, and so-called "Advanced Topics" (like Mobile Development, huh?). I would have preferred to see these topics moved to a different book. Then there would have been room to cover the beginner and core topics better, with more complete examples and perhaps a step-by-step application example.
I have little to say about Chapters 6 thru 8 because I haven't got to them yet. At this point I've almost lost hope that they will be complete enough for me to make sense out of. If my views and opinions change I'll come back and update my review.
I believe the authors' attempts to be brief and to cover so many topics resulted in a severe compromise. The book ends up being confusing more than anything else.
So which book should you buy? I haven't yet found a truly good ASP.NET MVC book yet, especially not for beginners. I've pre-ordered a new book by APress due in January 2013. It's an update of an earlier version that didn't get very good reviews, apparently because a lot of mistakes in the sample code.