x64 Computing History in brief: First Intel created a 64-bit processor called Itanium. The processor's cost and slow adoption led AMD to create a x86-64 hybrid CPU. This was popular solution among end users, and was adopted by Microsoft in Windows XP and Vista x64 editions. Intel soon follow suit; first reluctantly, then full-bore. The newer Core 2 CPUs, including the mobile versions, are true 64-bit processors, as are AMD's Athlon 64 and Turion 64 lines.When the first x64 processors were initially released Windows could not take advantage of the extended 64-bit instructions. Then several months later Microsoft released the Windows XP Professional x64 Edition. (Note: there's very little functionality difference between Windows XP Professional 32-bit and 64-bit editions.)
The two biggest problems with transitioning to the x64 platform are two things, 32-bit application compatibility, and 64-bit driver support. When the Windows x64 edition first showed up, there was little software that could run natively in 64-bit mode, and since then more and more software has been making the transition.
Advantages of 64-Bit Processors
There are two advantages of using a 64-bit processor. One, it can handle twice as much information in the same clock cycle as a 32-bit processor. This is useful for data intensive applications (such as scientific applications, databases, etc.).
Two, these processors can also handle a lot more memory then their predecessors. For example, Windows XP x64 is currently limited to 128GB of physical memory and 16TB of virtual memory. This is an artificial limit that could be increased if Microsoft wants.
The Windows XP x64 edition was the first major processor platform transition since Windows 95. Windows 95 was the first version of Windows to fully support 32-bit applications, but it also remained backwards compatible with the older 16-bit applications. The Windows XP x64 edition is Microsoft pushing the Windows platform to the next level again.
Most 32-bit applications should be able to work with the Windows x64 edition, but there are some exceptions. Windows x64 has to use a 32-bit emulation layer to run older 32-bit applications (AKA Windows on Windows 64 or WOW64). This is because the newer 64-bit processor can only run in one of two modes 32 or 64-bit. When its in 64-bit mode, it needs to use the 32-bit emulation layer to run 32-bit software. This also means that 32-bit applications will run slower in 64-bit mode.
There are two types of applications that won't run in Windows x64, they're 16-bit and 32-bit apps running in kernel mode. There are not a lot of 16-bit applications that are still around, so this should not be an issue. Although, there is still a chance that some modern applications can still contain older 16-bit code, so you will need to test them.
When Windows XP x64 edition first hit the market, there was limited hardware driver support from manufactures. Although over time that has changed, but you still need to validate that there are 64-bit versions of drivers available for the hardware that you want to use. The main thing holding back the development of these drivers is the device manufactures have been slow to update or create these drivers for their hardware.