Учить я бы начал с Си - он немного проще. Но! С другой точки зрения, сейчас практически все пишется на объектно-ориентированных языках. Поэтому имеет смысл учить C++. У C# есть своя специфика, но если знаешь C++, то проблем переключиться не будет. Обратно: C# -> C++ будет сложнее. Все изложенное - это всего лишь моя точка зрения основанная на 30 летнем опыте программирования. Каждый идет своей дорогой