Я не уверен, какой у вас опыт, но лучше всего будет выучить язык программирования и пойти дальше.Я начал с QBasic и медленно изучал язык, создавая простые игры.
Вы также можете немного поучиться на таком сайте: http://www.xnadevelopment.com/tutorials.shtml
Возможно, немного натянуто, но некоторые игры поставляются с достаточно мощными редакторами карт, которые можно использовать для создания собственных игр.Например, StarCraft II поставляется с очень мощным редактором, который можно использовать для изучения разработки игр, и вам не придется беспокоиться о написании движка.