[0]: https://godotengine.org/article/introducing-csharp-godot
[0]: https://godotengine.org/article/introducing-csharp-godot
Technically speaking though, thanks to their C APIs (GDNative) you can use any language now, I've seen bindings for D, Rust, Go, Haskell and a bunch others!
GoDot FAQ:
The short answer is, we'd rather a programmer does the small effort to learn GDScript so he or she later has a seamless experience, than attracting him or her with a familiar programming language that results in a worse experience. We are OK if you would rather not give Godot a chance because of this, but we strongly encourage you to try it and see the benefits yourself.
The official [languages] for Godot are GDScript and C++.
GDScript is designed to integrate from the ground to the way Godot works, more than any other language, and is very simple and easy to learn. Takes at much a day or two to get comfortable and it's very easy to see the benefits once you do. Please do the effort to learn GDScript, you will not regret it.
Godot C++ API is also efficient and easy to use (the entire Godot editor is made with this API), and an excellent tool to optimize parts of a project, but trying to use it instead of GDScript for an entire game is, in most cases, a waste of time.
The implication here being that all other programming languages used in game development are bound to be worse than GDScript?
I'm learning Godot and while I'm not an expert at either yet, by any means, GDScript has yet to live up to that degree of hype for me. The only advantage it has over other languages is its status as the default for the engine, but I don't see it as an objectively better language than, say, C, C++, C# or Lua.
But they listened to the community and added support for adding your own scripting language and Mono support. Which is still a big positive.