What really stands out for the book is that it is very well written. Great wording and language from Sipser make for a very easy read. All the concepts are put forth in as a friendly manner as possible, allowing one to focus on the concepts themselves and not get tripped over big words and cumbersome notation a lot of writers go for.

Most proofs are preceded by a section walking the reader through the idea behind the proof in an intuitive way. That makes the proofs so much easier to understand.

Another great plus is the solved exercises at the end of each chapter. The writer offers some selected solutions for some of the exercises that help the reader in dealing with the rest of the exercises.

All in all, this is a book I cannot recommend enough. Michael Sipser has done a fantastic job with this book and this is essential for any computer scientist’s library.