I admit to not knowing much about the history behind this decision, but it does seem like an odd choice. If I were making a game that was both GPU-intensive as well as CPU-intensive as the simulation scales, I would target performance when selecting my game engine. Seems like C++ is a better choice compared to C#.
AFAIK Unity is not made on C#, only the scripting is C#. The engine itself is coded in C++, just like most other game engines. It's kinda like complaining that ID software has been using LUA for scripting inside their engine since RAGE, probably not a good factor for engine performance.