Whenever I search for an answer to this, I always get "what you're best at", Python, Java, C#, C++, as the main answers (C#, Python mentioned in this board's FAQ).
I program for a living and know many languages so don't mind learning more, so "what you're best at" isn't really an answer. The question here is more of which language is the best tool for the job, as in best libraries and performance.
Python has pygame which I hear mixed things about, the framerate, speed, and portability is sub-par (from what I hear), and filesize of the exe. But has a lot of useful libraries for sound, gfx, etc.
C# had XNA but it's discontinued and I can't find any tutorials or anything online. I think I found a resurrection movement around but I'm not really impressed. Plus, couldn't find any tutorials or anything which how to start a game in C#.
Java is the one i hear the most about probably because of its ease of use but I also hear things about performance and overly verbose coding. Plus for gfx you mainly have to use OpenGL which is a nightmare.
C++ is another one I'd consider but as a first time game project, maybe avoiding C++ would be better?
I'd like to stay away from engines like Unity3d or Flash, and hope to be able to code a platformer with some 3d movements to run on a PC system (not interested in mobile).
So out of these or others not listed, which is the best tool for the job? Fastest to write, easiest to maintain, lots of game related libs (maybe even physics?), good performance/filesize, etc. I know this is going to be opinionated, because probably there really is no best language. But I'd love to read what you guys think.