I know it seems counter intuitive, but your VM will likely perform better if you just give it a single virtual core. It makes it easier for VMWare to schedule resources. At least that's my experience, YMMV.
I have a Win7 32bit VM running in Fusion on my 2008 MBP. I have a 2.8GHz C2D, 4GB Ram and (importantly) an SSD. I have provisioned my VM with 1 core and 1GB RAM. I have found this configuration adequate, although I do see some slowdowns on occasion - usually when the virus scanner kicks off...
I try to use my VM for as little as possible, and usually I am just running a couple IE windows, but I have had the following load running at the same time occasionally:
Visual Studio 2010
Visual Studio 2008
MS Visio
IE8
SQL Server Management Studio
SQL Server Express
I wouldn't bother trying to game on this VM, but the above set of apps run OK.