C# ist ein super Einstieg in die DirectX- Programmierung (DirectX SDK, Software Development Kit = eine Bibliothek für die Spieleentwicklung unter Windows/ XBox.).
Mit C# kannst du im Prinzip alles machen, was du mit C++ auch kannst. Du bekommst mehr Komfort (kannst mehr erreichen mit weniger Code) und verzichtest dafür auf ein wenig Leistungsfähigkeit und Kontrolle und kannst von C# problemlos auf C++ umsatteln. C++ kann für Anfänger sehr frustrierend sein.
Wenn du dich für Windows entscheidest, bietet sich XNA an, welches nochmal einige Sachen erleichtert, falls du es denn für eine Visual Studio Version zum Laufen kriegst.
(Visual Studio Express = kostenlose Entwicklungsumgebung von Microsoft.)
Als ich das letzte mal XNA hergenommen habe, musste man, um es verwenden zu können, eine Vorgängerversion von Visual Studio nehmen, die man nicht mehr von der Microsoft Seite bekommen hat.
Vielleicht hat sich da aber inzwischen was verbessert.