Just like what others told you here, hyphens are recognized as a separator (or space), so they should be used in instances where search engines may not correctly discriminate your keywords.
For example, expertsexchange.com - is that experts-exchange or expert-sex-change? In all other instances hyphens are unnecessary, as search engines will correctly parse out the keywords.
We are finding that keywords in your domain name play a larger role than we expected with Google, especially for low competition keyword phrases.
Either way, you should focus on the branding aspect of your name - i.e. stick with one that is short, simple, and easy to remember, as that will pay off most with your visitors in the long run. Remember - cater to your visitor first, not the search engine.
via Alex Schenker