It largely depends. Some dubs are excellent, and watching them in English actually enhances the experience; a perfect example of this is Cowboy Bebop, in which the ability to have recognizable accents for the show's ethnically diverse cast wouldn't be possible in Japanese and thus helps lend a particular flavor to the show in English. However, most anime dubs are relatively low-budget, and thus you're not getting the same kind of talent that high-end dubs (such as any of the Miyazaki films, dubbed by Disney) have, and thus you have an inferior product. The talent of the voice actors is really what this is all about; back in the day, translation was also an issue, but nowadays most companies will stick to a show's original script as best they can because they know that is what the fans want. A perfect example of this is Naruto: the dub is technically an accurate one, but the talent of the individual voice actors vary wildly and thus the series can be unbearable to watch in English sometimes.
I would have to say that, for the most part, I prefer to watch my anime subtitled. I'm not sure if this is something experienced by everybody, but for the most part, lines translated over from Japanese tend to sound a whole lot more lame in English than they did in their original language (especially the screaming out of attack names common in Shonen...), and subtitles can occasionally communicate a language complexity better than a dub can.