If you're not too particular about having the latest model; the best time to buy would be at the end of a model's life cycle or when the dealers are trying to get their old stocks out the door.

You'll get massive discounts and a lot of freebies.