The primary audience for this book is the C++ programmer who wants to write .NET programs. Stephen Fraser covers a comprehensive range of Managed C++ topics and successfully demonstrates to the reader that Managed C++ is just as important as the traditional .NET languages. Presently, there is a rather limited range of Managed C++ books available, and as an experienced C++ programmer this one is by far the best I've read so far.
The structure of this book is a refreshing alternative to that of most .NET books. The author begins with the usual framework overview followed by a selection of chapters covering the fundamentals and basics of the language, but leaves Windows Forms and Visual Studio .NET development until midway into the book. Following this, there is an excellent chapter covering Graphics with GDI+ and a handful of chapters giving the reader an adequate introduction to ADO.NET, XML, Web Applications (ASP.NET) and Web Services. Some may feel that these latter topics are not detailed enough, but these topics are much too broad to be covered in a book which aims to cover general Managed C++ development. The book gives an excellent introduction of each, which can then be pursued further in a more specialized publication. After covering Multithreaded Programming to a level that should keep C++ programmers happy, the book concludes nicely with a detailed chapter on .NET assemblies.
Overall I found this book to be well structured, clear and accurate with solid code examples throughout. I would highly recommend it as a first Managed C++ book purchase, and although it carries a price tag of around£40 I feel it's worth it. I would have liked the book to cover the basics of interoperability with legacy code and COM components, but to be fair the author does state on the rear of the book that it covers only new .NET program development. Developers looking specifically for a book that will help them to migrate legacy code and components with Managed C++ should look elsewhere.