用語集 最終更新 2026.08.09

C#

C# は、マイクロソフトが開発したプログラミング言語で、.NET というランタイムの上で動きます。 業務システム、Web API、Windows アプリ、そして Unity によるゲーム開発で広く使われています。

「C#はWindows専用」はもう古い

いちばん多い誤解がこれです。現在の .NET はLinux でも macOS でも動きDocker コンテナ上で動かす構成も一般的です。AWS や Azure 上の Linux サーバーで C# の API が動いているのは珍しくありません。

この誤解が根強いのは、かつての .NET Framework が Windows 専用だった時代の情報が残っているためです。C# の情報を読むときは、それが .NET Framework の話か、現在の .NET の話かを最初に見分けてください。

Java との違いはどこか

C# と Java は、どちらも仮想マシン上で動く静的型付けのオブジェクト指向言語で、文法もよく似ています。実務での違いは次のあたりです。

C# Java
非同期の書き方 async / await が言語機能 標準機能で書き方が分かれる
コレクション操作 LINQ で問い合わせのように書ける ストリームAPIで書く
主戦場 業務システム、Unity、Windows 大規模企業システム、Android

async / await はもともと C# が広めた書き方で、後に JavaScriptPython など多くの言語へ広がりました。

Unity 経由で入ってくる人が多い

ゲームエンジン Unity のスクリプト言語が C# であるため、ゲーム開発から入って C# を覚えるという流れが一定数あります。ただし Unity の中で書く C# は独自のライフサイクル(Start / Update など)に強く依存するので、そのまま Web API の開発に移れるわけではない点は理解しておいてください。

実務で見るポイント

  • 業務システムでは Java競合することが多い。決め手は言語より既存資産とチームの経験
  • Windows 環境の資産(Active Directory、Office 連携)がある案件では有利
  • 情報を調べるときは .NET Framework 時代の記事に引っかからないよう注意