The C# is entirely standard. It's compiled to normal IL bytecode. You can call any other IL code from it in DLLs as well, compiled in F# or VB.NET etc. You can even use a newer C# version than their supplied compiler supports if you set it up so you build the IL yourself since it uses the same IL. You lose a few conveniences like opening scripts directly from the editor but it works well otherwise if you want the new C# features. I believe it's also a bit more efficient that way to some degree.
You can also use a (as far as I can tell) standard C# and a couple of other languages including one called Boo which is sort of similar to Python.
I learned C# to work with Unity rather than have to confuse my brain with strange syntaxes of languages I use in other places.
edit: Here is a link http://wiki.unity3d.com/index.php/UnityScript_versus_JavaScr...