数値リテラルの改善.
 // メンバー変数初期化子やコンストラクタ初期化子で出力変数宣言が可能
// タプルのすべての要素間で == が比較可能
// 要素数が異なるタプル同士は比較できない。
インタフェースの既定メンバー.
インタフェースのメンバーに既定の実装を指定できるようになった。また、インタフェースに静的メンバーを持つことができるようになった。
さらに、インタフェースのメンバーにアクセシビリティを指定できるようになった。
パターンマッチングの拡張.
プロパティパターン、タプルパターン、位置指定パターンの追加により、再帰的なパターンマッチングが可能になった。
非同期ストリーム.
範囲指定.
生文字列リテラル.
 原因不明のエラーが発生しました。
汎用属性.
属性の型が型引数を持てる様になった。
// 属性
// 使用例
 // ...
パターンマッチングの拡張.
リストや配列に対するパターンマッチが可能になった。
 public string Message { get; } = message;
コレクション式.
スプレッド演算子.
実装.
歴史.
国際規格.
将来.
哲学.
標準ライブラリ.
外部ライブラリ.
特徴.
Hello, World!
演算子と演算子のオーバーロード.
テンプレート.
概略すれば、テンプレートはコードの記述に本来必要な型や定数を明確にすることなく抽象的な記述ができる、パラメータ化された関数またはクラスである。テンプレート仮引数に実引数を与えてインスタンス化した結果は、テンプレート仮引数に指定した型に特化した形で記述されたコードと全く等価になる。これによりテンプレートは、汎用的かつおおまかに記述された関数およびクラス（テンプレート）と、特定の型に特化した実装（インスタンス化されたテンプレート）の依存関係を解消し、パフォーマンスを犠牲にすることなく抽象化できる手段を提供する。
オブジェクト.
カプセル化.
継承.
多態.
静的な多態.
関数のオーバーロードは名称が同じ複数の関数を宣言できる機能である。ただし引数は異なっていなければならない。個々の関数は引数の数や型の順序で区別される。同名の関数はコードの文脈によってどの関数が呼ばれるのかが決まる。関数の戻り値の型で区別することはできない。