I think this is the most commonly asked question with the added kicker "...for those great sale prices?!"
I'll be honest. In the beginning, we just bought everthing at regular retail from the Lego store or even (gasp) Toys R Us. But that was back when we were only buying a handful of sets per year. In fact, when the UCS Millennium Falcon was first announced, I pre-ordered it at full price ($500) the same day. Unlike those who picked it up for $300 during the May the 4th event a few years later.
But now that we're focused on collecting, we've had to be more judicious about when/where we buy. Because Lego is EXPENSIVE.
Now, we won't buy anything unless it's at least 30% off. Here are some rules and websites we follow:
1. Toys N Bricks. This is an amazing site with up to the minute Lego sales and deals around the world. They also have a Facebook page - a quick and easy way to find out what's on sale and where. Their forums are interesting and I've found additional deals by reading member comments. There are a lot of other great resource sites like Brickset but in my opinion, the best bang for your buck is Toys N Bricks.
2. Stay away from Toys R Us. They mark up almost all their sets 15-20% above retail. Sometimes more. So even with their BOGO (buy one, get one) sales, you're still paying close to retail. I've only ordered from TRU a few times and that was because of sales stacking with BOGO. But for the most part, I usually avoid this place.
3. Unless you absolutely have to have it, wait a few weeks/months when a new set is released. Amazon typically has reasonable sales (even on new releases) with free shipping.
4. Target and Walmart - wait for clearance sales which hover between 30-60% off. But go early and always, always check the seals on the box. There's been an increasing rise in in-store thefts where people pick out the bag with all the minfigures (recently, Lego has tried to circumvent this by distributing minifigures in multiple bags). The other theft du jour is when the thieves buy the set, take out the key parts, reseal and return the box to the store. We didn't check the seal on one box we bought this weekend and discovered an entire bag of parts was missing.
5. If you have a Lego store nearby, sign up for their free VIP program. Every $100 you spend, you get $5 in store credit. They also have monthly building events which are free for kids (although I saw the line for one of these things and I couldn't see where it ended).
I could go on and on about drop ship scams, Black Friday etc but this has been a huge block of text already.
So, here's a Tie Fighter Pilot bearing flowers.