It depends what your general goals are. If all you want to do is play around with game ideas, then C# is probably sufficient. On the other hand, if you want to become a well-rounded programmer then you should eventually learn a wide range of languages, including C++, Java, LISP/Scheme, Python, Perl, etc.. Learning new languages is always a good exercise, and playing with low-level languages (C/C++), functional languages (LISP/Scheme), and other variants will help you in many, many ways.
I would definitely start off with an easier language like C#, and then move on depending on your goals.
Microsoft DirectX/XNA MVP