I get asked this question a lot and the answer is yes and no. Yeah, I know, that isn't really a good answer, but allow me to explain.
If you are doing any kind of standard ale like an IPA, Pale ale, Wheat, Stout, Porter, pretty much any kind of ale recipe, then you don't have to do a secondary fermentation. Just let the beer sit for 2-3 weeks for all the yeast to flocculate out and then bottle or keg your beer as normal.
However, if you are adding anything to your beer after it's done fermenting, that's when I suggest to do a secondary fermentation. Adding things to beer . . . what's that? If you are adding vanilla beans, fruit, dry hopping, coffee or anything else, then absolutely, do a secondary fermentation. Why not add to primary fermentation? Well, during primary fermentation there is so much activity going on that a lot of the flavors and aromas that you want to extract from the addition of other ingredients will more than likely get blown out during primary fermentation, which means you won't have as much flavor in your finished beer. This is the only time I do a secondary fermentation.
Lagers and Big beers (a.k.a. High gravity beers) need secondary fermentation. Lagers do because you need to rack out of the primary and into the secondary in order to actually "lager" your beer at 34 degrees for a month or so. With big beers, it's necessary to rack off of the yeast and let them sit to mature a little longer and finish up their secondary fermentation, and because primary fermentation may last up to one month with big beers. I've racked big beers from secondary to a tertiary (third racking) for a few months. Then I'll add new yeast and bottle.
So if a recipe calls for racking to secondary, ask yourself if you're adding anything more to that beer, and if you aren't then I wouldn't recommend racking. By not racking again you eliminate possible oxidation and contamination to your beer. Just have some patience, leave it sit another week in the primary and then rack off. All will be fine.