У С++ большая скорость исполнения программы, за счёт того, что язык более низкоуровневый, соответственно применяется там где эта скорость нужна: компоненты ОС - почти вся виндовс написана на С++ и не только виндовс, программирование микроконтроллеров - в частности ардуино (вроде как этот язык называется Arduino C, но по факту тот же С++ +пара новых стандартных библиотек).
С# вроде как изначально создавался для всяких веб проектов, но перерос в мега удобный язык для создания десктопных приложений под винду, в основном за счёт технологий, реализованных в .NET Framework (в частности таких которые автоматизируют создание десктопных приложений типа WinForms и WPF) и удобного С-подобного синтаксиса. Скорость выполнения в таких проектах не сильна важна, зато важна автоматизация всяких низкоуровневых штук, чтобы программисты могли сконцентрироваться непосредственно на решении основной задачи, а не на написании велосипедов и костылей.