Your choice of tools will be informed by the type of game you want to make. For example, if you're looking to so something with 3D or something that requires broad audio support, you would be wise to steer clear of HTML5 -- lessons learned when I was building Teletoon's Toon Feud game. However, if you're building something simpler that doesn't require excellent audio support and synchronization, across-the-board 3D support or peer-to-peer networking, and are willing to work around occasional browser incompatibilities, HTML5 is a good choice. I have no doubt that HTML5 will continue to evolve so in a few years we can expect it to have the capabilities of Flash 8 -- just not there yet. I broke it down in greater detail here: http://patrickbay.ca/blog/?p=153
If you're looking for a broad platform (your game can run on as many devices as possible without having to alter your code), I highly recommend Adobe Flash/AIR. I've developed nearly 90% of the games I've worked on in Flash or AIR and have no regrets. Keep in mind that your audience probably won't care what underlying technology is being used so the important take-away is that you work backwards from them -- what are your audience looking for? How will your game achieve these things? How can your choice of technology make this happen? Most successful developers don't tout the underlying technology (except to interested nerds), they tout what their product does for you.
Full disclosure: People have been paying me to develop games for about 10 years (I did it for fun for about 25), and I have a real soft spot for Adobe Flash / AIR. Yes, I'm deeply biased. I've worked in ActionScript, HTML5/JavaScript/jQuery, PHP, Java, C#, Assembler, and in the early days Pascal and BASIC. In my opinion, Flash gives you the biggest bang for the buck in terms of flexibility, power/abilities, and platform coverage. Of course, being interpreted means that ActionScript will never run quite as fast as C++ or to-the-metal Assembler, but ever since great Java-inspired concepts like Just-In-Time compilation were implemented, the Flash/AIR virtual machines have improved significantly. These days, Java and ActionScript are close cousins (though Java is still a few steps above and beyond).
You can go entirely open source and free (FlashDevelop or Apache Flex, supplanted with GIMP and InkScape), so costs are not a barrier. And, frankly, I think you'll find that ActionScript is close enough to Java to make the transition easy. Transitioning to JavaScript afterwards is even simpler -- just cut out the useful features and advances of languages like Java or ActionScript (strong data typing, for example), and you end up with JavaScript. Your skills will definitely transfer to other browser-based technologies so even if you end up dropping Flash/AIR in the future, knowing how frame-based animation is achieved, for example, comes in real handy when dealing with things like HTML5 (again, personal experience).
Ultimately, if you stick with one of the dot-notation languages you're probably safe in the long run, and when HTML5 is advanced (and actually standard) enough, you should be able to seamlessly transition your code. If you start with HTML5/JavaScript first, however, you'll be immersing yourself in a somewhat stagnant "standard" that, in my opinion, will limit you more than free you. But, of course, this is entirely dependent on what your actual limits are.