I smoke cigs and my dad's a dentist (yeah, he hates that I smoke). Laser bleaching works really well. Removes all the stains and it should last at least a year or two, a little less if you smoke a lot and drink red wine, dark colas or fruit juices, etc. It's pretty $$ though and insurance doesn't cover it. If you can afford it, do it though. The results are fabulous. As for over the counter bleaching, the Crest whitestrips are your best bet.