¿Como puedo comenzar a aprender programacion para hacer videojuegos en 2D?
Hay muchas maneras para aprender a programar videojuegos en 2D: 

1.- Buscar una playlist de videos de tutoriales de algún entonó o lenguaje de programación como pueden ser Unity o C++

2.- Aprender a través de foros de internet como pueden ser Reddit o Yahoo Respuestas

3.- Pagar un curso online o en persona sobre cómo programar videojuegos 

4.- Leer libros de programación para principiantes.
Con que genero puedo comenzar?
Podrías empezar programando juegos básicos del género shoot'em up. Son un buen punto de partida debido a que éstos suelen basarse principalmente en una nave (controlada por el jugador) disparando a otras naves enemigas en escenarios que se mueven sólos mientras la nave del jugador esquiva obstáculos. La simpleza del género hace que sea ideal para desarrolladores novatos. Si quieres puedes revisar juegos como Gradius gaiden, Embodiment of Scarlett Devil, o también R-Type III, para que te des una idea de como son los mejores juegos de ese género.
Puedes explicar más detalladamente en que consisten esos juegos?