You can play around with OpenGL for custom graphics and GUI packages for buttons and controls etc, but if what you're interested in is the game, I'd say just get yourself a game engine and go from there. It'll take care of the low-level stuff for you a lot better than you can yourself.