Hi!
First lets talk about Vista:
Vista will open all xp programs only that it requires double of requirements that are needed to run a program in xp ( for ex. if a program in xp needs 512 mb ram in vista it needs 1024 mb of ram)
As for games vista will open almost all games except the old ones (for exc vista can't open sims2 or another game)
Windows 7:
Windows 7 is in experimental process so there are less programs and game which run under this OS, but i think that some of that can be run using compatibility mode (at least it worked for me)
As for graphics Windows 7 is great and much more fast than vista (not as much as xp)
Hope this helped you