IMHO C# is probably the best option for your needs. It does require knowledge of some concepts like Object Oriented Programming, but that is also a plus as I find that using OOP practices make your code more modular and easier to maintain. If you're not completely up on OOP (classes, etc) I'd suggest finding a resource on that as otherwise you will struggle with it. The Visual Studio IDE is great (I use the Pro version at work) and think that Microsoft did a really great thing allowing the Express version to be used for free. C# is also the language most favored for APIs like Microsoft's XNA or SlimDX if you want to work more directly with DirectX on windows systems or XBox in the future.
C++ is commonly used in heavy-duty professional engines, but I don't think it is necessary in smaller projects that do not need to be "bleeding edge". If you go C++ you can generally expect your code development time to double due to having to clean up bugs. C++ is definitely a "know what you are doing" language as it allows you to do many tricks that a more strongly typed language like C# would not allow. However, it usually ends up being that those things end up causing bugs and hence headaches. Plus, with the processing power and memory available on modern systems, using fancy tricks to save on memory or instructions is not as relevant as it once was.
It is definitely true that one can make a blindingly fast and smooth product with almost any language and conversely a horrible and clunky one as well, but overall I think that C# is the best choice for beginners. It reduces gotchya's. You can work in a great IDE. It has wide industry adoption and so there are many online resources for learning and trouble-shooting (StackExchange is your friend).
IMHO C# is probably the best option for your needs. It does require knowledge of some concepts like Object Oriented Programming, but that is also a plus as I find that using OOP practices make your code more modular and easier to maintain. If you're not completely up on OOP (classes, etc) I'd suggest finding a resource on that as otherwise you will struggle with it. The Visual Studio IDE is great (I use the Pro version at work) and think that Microsoft did a really great thing allowing the Express version to be used for free. C# is also the language most favored for APIs like Microsoft's XNA or SlimDX if you want to work more directly with DirectX on windows systems or XBox in the future.
C++ is commonly used in heavy-duty professional engines, but I don't think it is necessary in smaller projects that do not need to be "bleeding edge". If you go C++ you can generally expect your code development time to double due to having to clean up bugs. C++ is definitely a "know what you are doing" language as it allows you to do many tricks that a more strongly typed language like C# would not allow. However, it usually ends up being that those things end up causing bugs and hence headaches. Plus, with the processing power and memory available on modern systems, using fancy tricks to save on memory or instructions is not as relevant as it once was.
It is definitely true that one can make a blindingly fast and smooth product with almost any language and conversely a horrible and clunky one as well, but overall I think that C# is the best choice for beginners. It reduces gotchya's. You can work in a great IDE. It has wide industry adoption and so there are many online resources for learning and trouble-shooting (StackExchange is your friend).