I actually consider these things to be downsides. Both are nice things to have when debugging, but you shouldn’t have to pay the penalty all of the time. Games can and should be able to guarantee some level of determinism unlike applications like tools, so paying for things you really don’t use is a problem. The primary things C# provides is the excellent reflection and module system, and the faster compile times (which is partly a result of the first thing).