Hier gibt es auf MSDN selbst eine Tutorial Reihe. Wie aktuell das ist kann ich dir nicht genau sagen. Ansonsten gibt es natürlich Alternativen. Zuerst solltest du dir wie bereits gesagt wurde die Frage stellen womit du dich beschäftigen willst. Bei DirectX oder OpenGl musst du dich halt um allen Blödsinn selbst kümmern. Du kannst nicht einfach ein Modell laden und in deinem Code eine passende Animation abspielen. Das musst du alles selbst machen. Du bist hier einfach auf einer sehr sehr niedrigen Ebene auf der normalerweise eine Engine aufbaut, mit welcher dann letzten Endes Spiele entwickelt werden. Für mich gibt es drei Möglichkeiten.
1, du willst dir den Low Level Kram mal ansehen. Dann nimmst du dir halt entweder DirectX wie oben verlinkt oder guckst dir OpenGl an. Da gibt es zum Beispiel das
Tao Framework welches dir benötigte C# Bindings liefert. Wenn du auf dieser tiefen Ebene einsteigst würde ich mir jedoch fast überlegen das ganze mit C++ zu machen.
2, du möchtest gerne Spiele ( oder andere 3D Anwendungen ) entwickeln. Hier wurde
Unity ja schon genannt. Die Engine liefert dir erst mal unglaublich viel fertig. Du kannst Modelle laden, die im Editor per Drag&Drop platzieren, Verhalten per Mausclick hinzufügen, hast integrierte Physik und vieles mehr. Als Einstieg wäre das erst mal gar nicht schlecht weil du dich hier auf deine Ideen konzentrieren kannst, nebenher aber siehst was da so hinter steckt. Als Beispiel benötigst du Vektor Rechnung, auch wenn dir Unity da schon einiges abnimmt, du lernst Meshs kennen, Materialien und vieles mehr.
3, du möchtest einen Mittelweg. Dann könntest du einen Blick auf
Mogre oder
Irrlicht Lime werfen. Hierbei handelt es sich um .Net Bindings für Engines welche eigentlich C++ nutzen. Diese Engines nehmen dir zwar auch einiges an Arbeit ab, jedoch nicht ganz so viel wie Unity. Du musst dich nicht darum kümmern wie du ein Fenster erzeugst, wie du ein Modell lädst oder eine Animation abspielst, hast dafür aber kein Komplettpaket was fertiges Verhalten, Physik, Materialeditoren und so weiter angeht. Wenn du hier einsteigen willst wirst du auch mit C++ Code lernen müssen. Es gibt zwar Material zu den Bindings, die meisten Quellen und Tutorials nutzen aber C++. Dort kannst du Code also nicht blind abtippen sondern musst dir überlegen wie du ihn zu C# umschreiben kannst. Das ist an sich gar nicht so schwer, hängt aber davon ab wie fit du mit C# bist und in wie fern du einfachen C++ Code lesen kannst. Zur Not kannst du dir das einfach mal ansehen wenn du dir ein Basis Tutorial zu einem der Bindings in C++ ansiehst und versuchst das ganze mit C# umzusetzen.