Почему вы ожидаете гораздо более высокой производительности от приложения C ++?
Приложение C # не добавляет никакого замедления, когда вы все делаете правильно. (не слишком много удаленных ссылок, частое создание / удаление объектов за вызов и т. д.)
Единственный случай, когда приложение C ++ действительно превосходит эквивалентное приложение C #, - это когда вы можете выполнять (очень) операции низкого уровня. Например. приведение необработанных указателей памяти, встроенный ассемблер и т. д.
Компилятор C ++ может лучше создавать быстрый код, но в большинстве случаев это тратится впустую. Если у вас действительно есть часть вашего приложения, которая должна быть невероятно быстрой, попробуйте написать C-вызов для этой горячей точки.
Только если большая часть системы ведет себя слишком медленно, вы можете написать ее на C / C ++. Но есть много подводных камней, которые могут убить вашу производительность в вашем коде C ++.
(TLDR: эксперт C ++ может создавать «более быстрый» код как эксперт C #, но посредственный программист C ++ может создавать более медленный код, чем посредственный C # one)