使えます。C#は Wikipediaより引用 「Ecma Internationalおよび国際標準化機構 (ISO) によって標準化され、日本においても日本工業規格 (JIS) によって採択された。」 引用ここまで というプログラミング言語なので、Windows限定などという事はありません。 Linux上ではMono Frameworkを使う事で、同じバイナリを動かすことができるほか、同じプログラムをコンパイルス事ができます。 しかし、Windows向けに用意された、言語仕様から外れた特別の拡張機能を使っていたり(たとえばWindowsネイティブなDLLの呼び出しなど)、Windows環境固有のパス区切り文字をハードコーディングしていたりすると、プログラムが正しく動きません。 特にパス区切り文字の問題は意外に根が深く、C#でプログラムを書いている人の多くが気にしていない問題であるようです。