The best time would probably be just after when Intel releases their new Haswell CPUs. And nVidia and AMD release their new videocards. That might be in June, or later even.
By waiting, you might be able to save 10-20% on price. Or get 25% more performance for the same money.
However, that means you will have to keep using your old PC for another 6-8 months. That has a cost as well. Loss of enjoyment. Will it be worth it to keep playing on a sub-standards machine, for just saving $100-$200 ?
I had a E8500 cpu + a gtx260 videocard. Bought in 2008. In 2011 I was thinking of upgrading to an Sandy Bridge CPU and a 500-series videocard. In the end, I decided not to do it (SNB had a chipset problem, and the gtx580 I had for 2 days was too loud). So by Q3-2011 I decided to wait for Ivy Bridge and the 600-series. I really regretted that decision. I should have upgraded when IVB and the gtx560 were released.
Now I have a i5-3570K and gtx680, and I'm pretty happy.
I never resold my old hardware on EBay (or our local marketplace website).
But I think I might sell my current equipment this summer, and use the money to buy a new Haswell + 800-series GPU.