In my case, since I look into VMs, I think a 64bit with more available memory might be the best option.
In a 8gb scenario, the guest os could be allocated a decent 4gb while the host os keeps the remaining 4gb; ensuring decent performance on the guest since the host shouldn't bottleneck too much.
I run a quad core, so I'd "give" 2 cores to the guest os. Although 1 would probably be enough.
I don't plan on running VMs simultaneously*sp?*, so my current cpu should be able to keep up just fine.
I'm debating between VMWarePlayer and VirtualBox, but I think I'll go with VirtualBox since that one seems to offer more setting options.
I run both on my work computer and they both run flawlessly.
The second you mentioned VM I think you answered your question for the memory - however, you'll want to upgrade the memory before testing out programs that take up multiple gigabytes of RAM. Unless your GPU is forcing your 32-bit OS to use only 3 out of the 4 GB of your RAM, the 64-bit OS may use 4 GB RAM less effectively than 32-bit OS because of the WOW64 stuff and the way the little variables in each program may use 64 bits instead of 32. For example, the original Supreme Commander game without appropriate mods can crash out due to lack of memory on a 64-bit OS faster than it does on 32-bit.
What are you planning to run on the guest OS? I never needed more than 2 GB on a guest OS (mainly because any heavy stuff I'd find a Windows version and run it on the host).
"The computer programmer says they should drive the car around the block and see if the tire fixes itself." [src]