There is a definite advantage to having keywords in your domain name, but the reason behind why it works is a common misconception. The myth is often perpetuated that having keywords in your domain name gives you some default standing with the big 3 search engines for those terms. This claim makes no logical sense, for a couple reasons. The search engine has nothing to gain by giving keywords in a domain name power in determining search results. The search engine has credibility to lose if they were to give preference to anyone who paid $8 to register a domain stuffed with keywords. Heck, they aren't even getting paid the $8.
If you remember the internet in the 90's, meta tags were all the rage. Search engines relied heavily on meta tags and on-site content to determine what your website was about, so anyone clever could simply stuff their meta-tags with the keywords they wanted, put the keywords in their website's text, and presto - instant traffic. Obviously this led to a period of search engine results becoming more and more worthless, prior to the advent of Google's rise to stardom.
There is an old adage to programmers: Never trust user input. In short, you always validate input coming from a user, because you cannot trust that it's inherently valid. Be it malicious, a mistake, or a simple case of ignorance, user input is often not what it should be. This applies to search engines as well, so they need to find reliable means to determine what a website is actually about and how useful (or useless) it is.
Today's search has evolved vastly since the days of meta-tags, and the myth that keywords in a domain name automatically give you weight with those terms is only an $8 registration away from the massive problems search engines had with meta-tags.
Having keywords in a domain does matter, for a very human reason. An awful lot of people have a habit of using URLs as anchor text. Maybe they're being lazy, maybe they're just not creative enough to put some descriptive words in. Whatever the reason, the majority of people linking a site naturally will make a link to ListAppraise.com, instead of linking to some text relevant to the site, like Domain Listings.
Even though the keywords in the first link are mashed together, search engines can and do give value to them. So the real worth in having keyword rich domains comes from natural linking habits. In my past experience doing link trading, even when you specify exactly what anchor text you want in the URL, a good deal of people will ignore it and use your domain name for the link's anchor text anyways.
Sometimes owning a keyword rich domain name is not ideal, or simply not possible. Perhaps you want to develop a brand online, and blue-widget-converters.com isn't your idea of a great brand name. Maybe you're in a highly competitive field and every relevant keyword combination you can imagine is already taken, and aftermarket names are out of your price range.
Viral marketing is the solution. Create something people want and give it away. Find a way to embed a link to your website with the keywords you want. Things like flash games, forum software, and blogging tools are great examples of viral marketing. Anything you can provide that a user will grab and copy to their own website, that will generate backlinks (and traffic), is a goldmine. It's a win-win as well, so you can feel good about it. The user is getting something they want for free (website content, a forum, etc), and you're getting something you want (keyword targeted backlinks) for free.