I have 4GB of RAM in my computer, which has an Intel 945G Motherboard and a Pentium D processor. The specifications say it should max out at 2GB of RAM, however after installing 2x2GB memory sticks, the computer uses all 4.
In a lot of instances, it depends on the chipset. If you have a 64-Bit operating system, but only 3.2GB show up, this means your chipset is x86 based only, and can't handle more than 3.2GB of memory, however, your computer may still be able to use all 4GB, you just won't notice, in say, task manager. If you have a x86 operating system, but have 4GB of RAM installed, it may also readout at 3.2, but if you have any more than 2GB of RAM, you really need to consider upgrading to a x64 operating system.
You CAN mix different speeds of RAM, I.E. 533mhz and 667mhz, however the 667mhz will run at 533mhz. It is true that you have to keep the 533 and 667 in matching slots for more stability, but the motherboard will downclock the faster of the two. It is also somewhat true about using a set instead of buying individual stick, but it is not necessary. Any change in performance would be negligible.