If it has to last 4 years, it needs to be futureproof. And the future is multicore, so i'd go for an X2 3800+.
Instead of buying a 7800 gt now, get something more midrange, and two years from now buy another midrange card. Your average gaming experience will be better, for about the same...