Dear Arnaud,
The Revit API is based on .NET.
You can use any language support .NET to interact with it.
There are no differences in functionality between different .NET languages.
A lot of the items in your list have nothing to do with Revit.
It seems you come from the AutoCAD side of programming.
That may make it harder for you to learn (and accept) how to work in the BIM world.
Revit and its API is different:
https://thebuildingcoder.typepad.com/blog/about-the-author.html#5.41
Best regards,
Jeremy