I would second the recommendation of using Unity, its my preference for small games and side projects and demos i have found my self making over the years.
C# is a great starting language to learn and with the easy UI of Unity you can either keep it simple and focus more on using the GUI or push yourself and do more in code (Which i would reccommend).
Everything and anything can be Googled for Unity.