Si comprende el trabajo de los fundamentos generales de programación (tipos de datos, clases, funciones, etc.), diría que vaya a por ello.
Cuando comencé a aprender C #, tenía en mente los juegos, pero comencé a desarrollar aplicaciones de consola que, aunque parecían muy básicas, incorporaron algunas técnicas avanzadas de C #, para mejorar mi comprensión del lenguaje.
Una vez que comprenda cómo funciona C #, continuaré y descargaré el estudio XNA desde aquí: http://www.microsoft.com/download/en/details.aspx?id=23714
Deberá comenzar aprendiendo SpriteBatch. Algunos buenos tutoriales se pueden encontrar aquí ...
A partir de ahí, puede comenzar a experimentar con sombreadores de píxeles (en SpriteBatch, http://msdn.microsoft.com/en-us/library/bb313868(v=xnagamestudio.31).aspx ), y también transformaciones matriciales ( http: // www.david-amador.com/2009/10/xna-camera-2d-with-zoom-and-rotation/ ).
Una vez que tenga una buena comprensión de eso, finalmente puede pasar a usar el dispositivo gráfico para dibujar primitivas y modelos usando BasicEffects y sombreadores personalizados.
¡Buena suerte!