Superfetch and system cache. There is no way to 'see' what pages or how many are owned by which processes and whatnot, at least not a ready-made way for someone without some knowledge of debugging and programming.
If you are accustomed to seeing a lot of memory reported under XP as "available" and assume this means "free", you would be wrong. Vista counts memory pages on the Stand-by list against the amount of physical memory reported as "free" by Task Manager. Windows XP includes memory pages on the Stand-by list in the amount of physical memory reported as "available" by Task Manager.
IOW, XP's definition of "available" is completely different than Vista's definition of "free". They cannot be compared, not even a little bit.
Vista defines "free" as most people might; not utilized for any purpose and available for use on-demand. Windows XP defines "available" as most people might not expect; free memory as defined by Vista in addition to memory being utilized for various other things but can be made available for demand use very quickly with little to no paging (e.g. zero-ing and scrubbing). Pages on the Stand-by list easily range from a few dozen to several hundred MB, which XP is counting toward its "available" metric, while Vista does not count as "free".
If XP used the same terms and definitions as Vista, it would make Windows XP suddenly look much worse than most people ever thought while making Vista look, well, not as bad by comparison.