Original Post
Hi everyone, I'm a college student learning for BSc in computer science. So far I've been learning C# and I plan to do the "Windows-based client development" and "Application development foundation" exams in this summer. We have mandatory courses at school in C# which is good because C# is a very good language for enterprise application development. However I've read everywhere that game development is being done in C++ and I couldn't find any jobs for .NET (or C#) game developers so it must be true for now. I'd like advice from you if I should learn XNA or C++ if I want to become the part of a bigger team and develop commercial games later on. I didn't decide which way to specialize in game programming yet, and I've read that I don't have to hurry with that until I got my first job. I think I don't have enough enthusiasm to be a graphics programmer, they usually wake up and go to sleep with graphics and that's not true for me. I didn't use XNA at all, but if it's really based on .NET 2.0 then it must be somewhat convenient to use. The problem with it is that it's too high level and that could mean too much restrictions. So should I think of C# as a language that was a good tool to learn object oriented techniques, but neglect it from now on and go C++ all the way (because C++ is huge and needs full attention) or go deeper into C#, .NET and XNA? I have 2,5 years left from college and when I finish I'd like to move to England, so it's somewhat important for me to have a knowledge that can be put to broader use in the video game industry. (I've read all about how I should work on extra projects and get experience working with people, so right now I'm only concerned about the topic in question.) Thanks in advance for the responses.