C'est surtout que tu apprends les bases pour tout, et que ça t'ouvre vraiment toutes les possibilités :)
Mais comme dit, tout dépend de la capacité et la volonté à apprendre pour la personne :)
Un langage objet et de haut niveau, même s'il est dépendant de plusieurs choses, peut-être un bon commencement pour comprendre comment "fonctionne" la programmation (en général) tu ne penses pas ? Du moins, c'est moins difficile à décrypter, et par après il peut apprendre le C ou le CPP si il veut continuer.
Je dirais que c'est plutôt pour une première approche des langages orientés objets que j'ai proposé le C#, après libre à lui de choisir directement le CPP ou le C comme je l'ais expliqué plus haut.
Ton point de vue sur ce que j'ai dis plus haut m'apporterait beaucoup, tu pourrais y jeter un coup d'oeil ?