Hmm, I was going to post a thread about XNA Game Studio Express (
http://msdn.microsoft.com/directx/xna/gse/), seeing as it's really cool, but I guess here would be as good a place as any to mention it!
I started working on my own SE4 scrolling shooter last night with it - I must say it takes a lot of the tedium out of DirectX game programming! Sure, you have to use C#, and you need a bunch of prerequisite software like the August DirectX SDK and Visual C# Express, but it is really cool - no more worrying about "why won't that thing render, oh, I passed the wrong Presentation Parameters to the graphics device" for half an hour! Everything is laid out logically - you have a GameComponent class which can be subclassed for pretty much everything in your game (I am using 3 instances of it to render three scrolling starfields of different brightnesses and speeds, which is all my "game" does so far
); there is a clearly defined object oriented game loop in the template project (just code your GameComponents, drop them in the Game class, and the template code will deal with timers and rendering to screen and window resizing and all that messy stuff) - all you have to worry about is your game logic! Granted it's still in beta so some functionality is missing (such as the 3D mesh loader), but if this beta is any indication I think XNA will be a great entry-level game development platform... oh, and did I mention future versions will allow you to code for the Xbox 360?