Unityでのプログラミング言語

Unity 4では3種類の言語が使えました。
C#、JavaScript(UnityScriptと呼ばれてます)、Booの3つです。

Unity 5になるとBooがなくなっています。
公式のマニュアルやUnity上で新しくスクリプトを作るときの選択にBooがないのです。
(実行は可能らしいですが、今後消えていくと思われます。)

現在Unityで使えるプログラミング言語は C#とJavaScriptになります。
JavaScriptの方はUnity独自の拡張が多くなされ、UnityScriptとも呼ばれます。
元のJavaScriptにはない書き方をしなければいけないことがあり、JavaScriptに慣れている人ほど混乱しそうに思います。

C#が一番良いと思います。
使われていることが多いですし、入門書に困ることもありません。Unity以外で使われているC#と同じように書けます。JavaScriptに比べて慣れればなれるほどC#が使いやすいと思います。 JavaScriptは読めれば良いくらいだと思っています。他の人が書いたコードに入っているときに知っておくと良いということです。

C#を使う上で気をつけるべきことがあります。
クラスのインスタンス生成時に呼ばれるコンストラクタを使わないということです。

Unityのシーンに保存されているデータと競合するからなのだと思います。 Unityのインスペクタ―でクラスの値を変更できる機能があるのですが、それを実現するにはコンストラクタでの初期化は都合が悪いことが推測できます。