The C# programming language - Hejlsberg, Anders (Microsoft .NET development series, 2010)