Program files (x86) provides you with the location for 32bit software, and the Program files folder is the one for your 64bit software. Because Windows Vista can run 32bit applications using the wow64 emulator, it is a good design decision to separate the location of programs with different architecture types.
If you are just simply installing programs, either from their media or from a download, then you don’t need to worry about which directory they will get installed to as this is taken care of for you.
Generally speaking, unless a program specifically mentions 64-bit then it will be installed in the (x86) folder. Note that some programs do not install in either folder; instead they create and use their own.
They’re kept separate so you can have both the 32bit and 64bit version of the same software installed at the same time. It’s also there for compatibility, as some 32bit programs depend on certain resources being in the “Common Files” folder that wouldn’t usually be available (or overwritten by a 64bit version) on a 64bit system.
Microsoft themselves uses it this way for some of their own applications. You have two copies of Windows Media Player, one 32bit (in Program Files (x86) and the other 64bit (in Program Files).