disk cache is useful in that it makes frequent HDD based tasks go faster, as then they don't have to go all the way back out to the physical HDD to read/write data.
also, in cases where programs suddenly need a lot more RAM, then stuff can get pushed out to disk and the RAM is there and ready to use.
Recent versions of Ubuntu seem to be shipping with a pretty iffy disk caching policy. Not only will it use the entire set of available RAM as disk cache, but it'll then starve running applications of memory, rather than release portions of the cache. Every time I run a full build of our source tree, I'll end up with a nice, full 12-14 GB of disk cache, which will then persist till next reboot.
Thank god for sync; echo 3 > /proc/sys/vm/drop_caches, but I'd rather they made the disk cache policy tunable, and/or gave it sensible defaults...
fair enough...
I was mostly thinking Windows here, where it seems to work fairly well, though it does have the tendency to push programs out to disk after a while, so even with a lot of RAM it still grinds occasionally, but usually this is when switching back to an app which has been left in the background for a while.