キーワードとは、C#言語の文法を定義する文字トークンのことです。
キーワードとはC#に標準搭載されている専用単語の総称で、それぞれ固有の役割が割り当てられています。そのためコード作成時に変数名や関数名といった識別子として使用すると、構文上の曖昧さが生じエラーとなります。例えばintは整数型を表す単語なので、bool int = 12; のように変数名に使うとコンパイラが解釈できなくなります。これはintが専用の機能を持つ予約語だからです。
キーワードには二つの基本ルールが存在します
キーワードは変数名やその他の識別子として直接利用できません。唯一の例外は単語の先頭に@記号を付けた場合です。C#標準キーワードはすべて小文字で記述され、.NET標準型名はパスカルケース(大キャメルケース)で命名されます。
| abstract | const | extern | int | override | sizeof | typeof | |
| as | continue | false | interface | params | stackalloc | uint | |
| base | decimal | finally | internal | private | static | ulong | |
| bool | default | fixed | is | protected | string | unchecked | |
| break | delegate | float | lock | public | struct | unsafe | |
| byte | do | for | long | readonly | switch | ushort | |
| case | double | foreach | namespace | ref | this | using | |
| catch | else | goto | new | return | throw | virtual | |
| char | enum | if | null | sbyte | true | void | |
| checked | event | implicit | object | sealed | try | volatile | |
| class | explicit | in | operator | when | while |
グローバル予約語:どの構文内でも直接命名に使用不可、必ず@を先頭に付ける必要があります
int @int; // 文法的に正しい記述
int int; // コンパイルエラーが発生Code language: JavaScript (javascript)
コンテキストキーワード
コンテキストキーワード(Contextual Keywords)
コンテキストキーワードは特定の文法構文の中でのみキーワードとして扱われます。通常のキーワードと異なり、それ以外の箇所では識別子として自由に利用可能です。
| add | ascending | async | await | by | descending | dynamic |
| equals | from | get | global | group | in | into |
| join | let | on | orderby | partial | remove | select |
| set | value | var | where | yield |
特定文法内のみ予約語として作用、その他の場所では変数名として直接使用可能
int var; // 有効、型推論構文以外ではvarはキーワードとみなされない
var num = 10; // ここでvarはキーワードとして型推測に利用されるCode language: JavaScript (javascript)

先ほどの例で囲まれている単語はすべてキーワードに該当します。
Previous: 識別子(Identifiers)
Next: プログラムのエントリーポイント