Pretty huge reason is that you can cut down your development time quite substantially including your bugs
hmm not really C# is just a language .Net is an implementation, you could have countless implementation of C#.
Its actually is the other way around , mono may not fully implement .NET but is actually .NET that is missing by far the most features , to be specific MacOS and Linux support. Mono not only support these platforms but comes with specialized libraries that give direct access to the OSes.
Again you got this the other way around, if you want dynamic objects its horrible dealing with them without GC. Memory leaks are reason enough to avoid C++. GC is pretty much mandatory this is why Unreal offers its own GC and you will be using in most cases Unreal GC anyway because that how most of its code works. Further more GC performance issues are more a problem for a game engine than is for gameplay code because gameplay code does not need to run in loops of thousands of time per frame.
Even if GC becomes a problem you can always fall back to C++ code and manual management for that small piece of code that creates problems with GC. It does not worth going full C++.
Wont matter, mostly because wrapping C++ to any of those language its dead easy and still many times easier than coding the whole thing in C++. So if you miss a you just add it in , in most cases all you need is the method signature and you are ready to rock.
because developer time is very precious, there is a reason why GC language have pretty much dominated the field anywhere you look there is GC and VMs, Java, Python, Javascript, PHP, C#, Ruby, Pearl, VB .NET and much more. Wasting less time on problem you can easily avoid by not using C++ in the first place. C++ very slow compile times is another good reason.
Other programming languages are not only a good replacement for C++ but also a very good replacement for Blueprints, mainly because they are made for pro coders they come with far more features and flexibility and text code is easier to deal with for complex logic and of course you have the advantage of IDEs, while with Blueprints you depend solely on Epic to improve your workflow with them.
Another big reason to use C# is because you are familiar with it, either because you have worked with it in the past or you come from Unity which uses C#.

