C# 6.0 draft language specification
The C# language specification is the definitive source for C# syntax and usage. This specification contains detailed information about all aspects of the language, including many points that the documentation for C# doesn't cover.
Version 5.0 of the specification has been released in December 2017 as the Standard ECMA-334 5th Edition document.
Version 6.0 of the specification has not been approved as a standard. This site contains the draft C# 6.0 specification. It's built from the markdown files contained in the dotnet/csharplang GitHub repository.