I found more than 2GB in XP x86 didn't really help much either, mainly because 32-bit apps will still address only 2GB max and still draw from the same 2GB of user-space for all programs by default. There's some benefit as more physical RAM is available for the OS/kernel-space but its marginal at best. In Vista 32 the situation improves somewhat, as that extra physical RAM over 2GB minus whatever the kernel-space needs can be used for SuperFetch, as others mentioned.
Best bet if you want to see real improvement from more RAM over 2GB is to go with a 64-bit OS, as many newer games and apps flag /largeaddressaware for 32-bit apps in 64-bit OS only, allowing up to 3GB for each application. Also, 64-bit OSes by default will not limit user-space apps to the same 2GB addressable space and will give them 2-3GB each as needed. For instance, if you were running a game in XP with some other apps using 200-300MB, the game would get 1.6-1.7GB with the rest of the user-space apps using the rest up to 2GB. In a 64-bit OS, the game itself can use 2GB and up to 3GB if /largeaddressaware is flagged without being restricted by the other apps using 200-300MB. Any additional unused RAM in Vista would be used by SuperFetch to cache commonly used data.