Hyphens are supposed to help because they allow the words to be separated and easily recognized by programs.
Hyphens in a domain name can have some positives for SEO, but the effects on a site's users and brand should also be considered. A site like blue-widgets.com maybe benefit more than just bluewidgets.com as the hyphen separates the words and allows search engines to understand what the site is about easily.
It is considered that having a domain name with a large number of hyphens (usually 3 or more) may actually hurt rankings as it is much more probable that the domain name is spam.
Comments (1)
This is a somewhat spammy technique that used to work well in MSN, but has since lost a lot of weight. I think I remember reading somewhere that Ask did a test and found that the quality of a web site greatly reduces if the domain name has more than 2 hyphens it in. Makes sense.