64-bit has its own problems on the hardware side, though. How many people here have tried routing a 64-bit bus line on a microprocessor before? This isn't like the "lack of vision" problem Bill Gates had with the 640K memory thing. You pay a significant performance, price, and power penalty when you go 64-bit on the hardware. That's why things like the Intel Itanium were outrageously over-priced, YEARS behind schedule, and little market for them.
I tend to disagree. 64bit CPUs have been around for ages (since 1961), the technology has been well-tested. Lots of supercomputers and other big non-consumer hardware already uses 64bit computing. Only recently 64bit entered the consumer world.
Note that the Itanium still isn't consumer hardware, the Itanium has been designed for servers and high performance computing. The reason it failed isn't due to 64bit, it's due to its overall architecture:
"Itanium's architecture differs dramatically from the x86 and x86-64 architectures used in other Intel processors. The architecture is based on explicit instruction-level parallelism, with the compiler making the decisions about which instructions to execute in parallel."
And that's the problem: You need a special compiler and you need to write your code in a special way so that the compiler can easily autoparallelize it.
This gets even more difficult in other architectures, like the Cell as used in the PS3. Still, most of the console titles only use a fraction of the Cells capability, mainly because most console games are ported to every single console there is. And since these games are made by companies interested in profit and not high performance, they don't optimize there code to one platform.
Now back to 64bit in the consumer world: The current 64bit consumer level CPUs are a dream. Fully compatible with old 32bit code and a 64bit instruction set that's very similar to the 32bit one (which makes it relatively easy for compiler makers regarding optimization).
Greatly lifted memory limits, virtualization support, multiple cores, that are the key features of the new consumer level CPUs in my opinion. To my knowledge, the next version of Windows will no longer be available in 32bit mode, so in five years or so i think no new computers will ship with a 32bit only CPU. Skip forward a few years and CPU vendors will start to throw the legacy x96 stuff overboard.
It's a slow process, but be glad it's a smooth transition, nobody is forced to throw away all old software and start from scrath from one day to the other.