It's really up to you, whether you want to spend your money now or later. If the system you have is just cutting it, then yeah, you may want to wait. However, waiting for long periods of time for new technology can be a little bit pointless sometimes, as some new CPU/GPU's might fail, they may not be as good as once thought. (which was what happened with the R600?)
If you try and buy the best, you'll be wasting money, because you'll finally go, "Well, I've got the best of best now" then 2-3 months later, "Well, there's new stuff out, why didn't I wait?". The way to think about you need to buy is, how future proof you want it to be, what you want your system to do, and what your budget is. My advice, probably buy an 8800 gts now, but that's just me, because I know it'll last me at least 3-4 years, I mean my 7600GS has lasted me about 18 months so far, and I have no intention (at the moment) to upgrade.