In this example BuyCars.com is clearly better, however that type of domain is out of the price range of most domainers.
If you are an average domainer then Buy-Cars.com would be fantastic domain to develop.
Hyphenated domains are awesome to develop and very underrated (Look at the hypenated sales thread). As long as they have decent Word Tracker, Google Results, and PPC Ads.
The hyphenated domain indexes the same way in Google. The downside is you won't get type in traffic. However, 2-3 Word Domains rarely get type in traffic in the first place. You will also lose some traffic to the non hyphen version
But, it is much easier to develop a domain with natural search, than to use a "Brandable" domain, especially for someone with a smaller budget.
For a profit generating site .NET is always better.
I would never use a domain that includes a hyphen UNLESS the non-hyphenated .com domain happens to be taken and the keyword(s) are a must have. I would attempt to find other keyword combinations available instead of using a hyphen though.
__________________
"If PHP is peanut butter...then...MySQL would be the jelly. Together they can make one heck of a good sandwich." --- Netzilla 9/14/08
99.999% of the time, the non-hyphen wins. There are only a few cases where it wouldn't, such as for high-end SEo situations for indexing. Bottom line is the non dash always has a higher price.
The non dash version is always better without a doubt, however if you are planning on developing a site you have to factor in the cost.
Let's say your budget is a couple hundred. It is easier to use a hyphenated domain with high word tracker.
Let's say BuyCars.com is $25K. Buy-Cars.com would cost much less, and be just as good to develop. It is a better choice IMO than a similar domain like BuyCarsToday.com
The downside to hyphenated is mainly the loss in traffic to the non hyphenated version, but unless you have a huge budget it is small trade off for the lower cost.
All those brands have been built from billions of dollars in adverstising, which most companies do not have. If you had the money available you could brand ClownPenis.com into a top search engine. However, in an average budget you are better getting a domain with natural searches over something "Brandable". It takes a lot of time and money to brand a domain.
A couple examples are eBay.com and Google.com
They have been branded into the biggest auction site, and search site. But to the average person the money would not be there to brand a totally unrelated domain to the content.
However a domain related to the field like Online-Auctions.com, which would have natural search traffic would be much easier to use.
but it is not the money (to say that it is, is too cynical and missed out on the potential learnings)...it is the thoughts that go into building a brand...and part of those thoughts would cover the end-user experience
thus in looking at the top brands, you get a glimpse of how they incorporate the end-user experience into their branding, especially those which are technology companies
as a final example, take creative technology...they can hyphen it or do without....instead their net branding is simply creative.com
If money is no object then clearly branding is a good option. However if I was developing a site to do with Credit Cards. I would rather have Credit-Cards.com any day over something "Brandable"
That is why quality generics sell for so much. They don't need to be branded.
If you owned Stocks.com, StockMarket.com, etc. It is pretty clear what the website is about. If you go to SomeRandomName.com it is going to take much more money to "brand" it.
That is exactly the point. Most people can't afford BuyCars.com, Buy-Cars.com would be a good backup option and is still a better option that something completely unrelated that is "Brandable" IMO.