By Kevin Hazzard and Jason Bock
Roslyn API is a major step forward for developers who want that intimate view of code. In this article based on chapter 12 of Metaprogramming in .NET, authors explain how Roslyn API works through executable code and then go deeper into more of its parts.

Understanding the Basics of Roslyn (PDF)