Для новичка лучше учить программирование. Которое не про то, как писать код на модном языке, а про то, как решать программистские задачи.
Язык - не цель обучения, а вспомогательный инструмент для решения определённого круга задач. И выбирают язык не по названию, а по тому, насколько хорошо он подходит для стоящих перед тобой задач.
Для задачи "начальное обучение программированию" и C++, и C# подходят плохо. Но С# для этого всё же немного удобнее, чем С++.
При сравнении скорости C# и C++ победителем оказывается C++. Следовательно, для программ, требующих высокой производительности, лучше выбирать C++. Однако есть способы оптимизации кода C#, чтобы сделать его скорость похожей на C++. Несмотря на то, что C# работает во всех популярных операционных системах, наиболее предпочтительной считается среда Windows. C++ не имеет предпочтительной или более популярной операционной системы. Но если ты новичок, лучше бери C#. Он будет полегче.