Давайте сравним. C++ лучше тем, что: кроссплатформенный, стандарты есть на него, хорошие концепции, быстрый, требует менье ресурсов. достаточно изучен, много софта готового и очень годных либ, очень много логики, в отличае от ... C++ хуже тем, что: менее безопасный чем C#, сложней в освоении, в частности уровень входа достаточно высок C# лучше тем, что: порог вхождения не такой высокий, много применений в винде вплоть до повершелла и до сборок в составе MSSQL, даже есть элементы кроссплатформенности, если вы виндузятник, то в сишапе будете чувствовать себя как рыба в воде, много удобных сред разработки C# хуже тем, что: сломает ваш мозг. там все по-своему, средства разработки преимущественно коммерческие, стандартов фактически нет, особенно для новых версий языка, его ниша -- дотнет, больше нигде не видел его применения. а это значит, что если загнется дотнет -- то знания по сишапу станут невостребованными