Windows 7 kills VMWare performance by disk caching?

See the last entry here http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1008885

I have seen huge improvements to VM performance after making this change. Just make sure you have enough memory on your host.

Edit the virtual machine settings to reduce I/O usage by using more host memory:

Adding these settings to a virtual machine can reduce the I/O load on the hard disk, however these adjustments require additional memory on the host. Only add these settings if there is sufficient free memory on the host to accommodate all the memory allocated to the virtual machine, otherwise you may cause a memory starvation condition that can reduce performance of all the running virtual machines or possibly affect the host operating system. Use these settings with caution.
Open the .vmx file for the affected virtual machine while it is powered off. Add the following lines to the file using a text editor. For more information, see Editing the .vmx file of a VMware Workstation and VMware Player virtual machine (2057902)

Note: If you are using VMware Server, you may need to restart the VMware Authorization Service (vmware-authd) for changes to take effect.

MemTrimRate = "0" 
mainMem.useNamedFile = "FALSE"
sched.mem.pshare.enable = "FALSE" 
prefvmx.useRecommendedLockedMemSize = "TRUE"

Note: If you are using a Linux host, use the following entry instead of mainMem.useNamedFile = "FALSE". The mainMem.useNamedFile entry only applies to Windows Hosts.

mainmem.backing = "swap"

Is there a virus scanner running in Win7? Could be painfully scanning the VMDK files on the fly.

And like zippy said, vmtools do a LOT, but it shouldn't be as bad as you describe if they're not installed yet. One of the things vmtools does is balloon memory to let VMware know what's safe to page out, and to keep windows from paging out stuff that vmware is really using.

Oh, and the Windows Search 4.0 in XP can go nuts in a VM. It can mistakenly think the system is 99% idle and run indexing.