Some years back games were typically programmed in C with some assembly, but today the game industry is very predominately C++ with possibly some assembly code mixed in (although with 3D hardware and APIs those with these skill sets are moving towards vertex and pixel shader programming).
For cell phone games programming, the industry is split between C/C++ with proprietary APIs and Java (in the J2ME with MIDP form).
The simple games that you see on the web in websites are programmed typically in Java, but sometimes in Shockwave/Flash.
It is possible to make games in almost any language, though. In my opinion Java is an easier language to master, but if I could only know one language for game programming, it would have to be C++, because all of the best libraries are designed to work with C/C++ (Direct3D and OpenGL).
Another alternative that is coming up these days is C# and Microsoft's Managed Direct3D. C# is more similar to Java than C++. It allows you to use Direct3D, which is the most major API for Windows, but C#+D3D games will be very much restricted to Windows while Java is very portable to PC/Apple/Linux machines and C++ moderately portable if you use OpenGL and some other libraries.
Your choice depends highly on whether you are doing this for hobby or career.
As for the easiest/best language I feel that Java is the best platform, but I think C++ is the "coolest" if that makes sense. I like Java mostly for the simplicity of the language and the platform that surrounds it, and that it is extremely portable. If C++ had a similar "library" that came with it that was as extensive as Java's I'd probably like C++.
I don't consider HTML a programming language because there is no flow control, nor is there an input or output. HTML is a document description. JavaScript is a programming language, though.