言語の特徴としてはScalaとF#はそっくりだと思う。

*型推論:
 F#,Scala -> ◯
 C#,Java -> △,×
*代数データ型:
 F#,Scala -> ◯
 C#,Java -> ×
*パターンマッチ:
 F#,Scala -> ◯
 C#,Java -> ×
nullの廃止
F#,Scala -> ◯
C#,Java -> ×
モナド:
F#,Scala -> ◯
C#,Java -> ×
高階関数:
F#,Scala -> ◯
C#,Java -> △,×
変数:
F#,Scala -> デフォルトで破壊できない
C#,Java -> デフォルトで破壊できる
対話環境:
F#,Scala -> ◯
C#,Java -> ×

JavaからScalaへの大移動が始まっているのと同様のことがC#からF#に起こるに違いない!と言うのも本当かもしれない。
---------
要望があったやつ追加