Мнение простое, как один бит: языки программирования не сравнивают. Вообще никак не сравнивают! Языки программирования выбираются исходя из опыта и практичности. И не более того. C# - для .Net, так как он удобен для программирования под .Net! Удобен и практичен! C++ удобно использовать для системного софта, например, для терминалов, для микроконтроллеров. На терминале, на котором стоит Linux и нет никакого .Net удобно программировать на C++.