There are tons of things that matter, but here's a few of the most important:
1. Simple / Short. Especially one word.
2. a .com extension is obviously the most prized for tye ins.
3. keywords - good keywords in a short domain are very valuable.
4. No hyphens or numerals. Not a biggie.
5. Inbound links - especially if it has got a high PR etc.
6. Traffic. More traffic = more $'s.
That is so true and by the reverse, if someone is interested, there may be a good reason for it. I had a friend who purchased a domain a few years ago and never really did anything with it. It's a catchy phrase though that she used for it. Now, someone has a product to sell and wants that domain. She didn't understand why until she gave us some details. The product fit perfectly for the domain name. The buyer kept offering a low, no-nothing price. We told her to hold out. It was just too perfect. She did well by being patient!
Do keep an eye on the history of the domain you are selling/buying, the value of being blacklisted, or known for spam, and negative things like those might have a direct result on the quality and the value of a domain on sale.
A simple and short, well established, and clean domain name with a good online exposure is worth more than a domain called 123buymylaptop123 registered 3 months ago (random example).
There are also quite a few sites online that scan the domains and give a virtual value to them, marketplaces, sitepoint.com, and of course domain forums (maybe even this one!) You could also for fun check the domain on dnscoop.com.
Consider your audience.
Look at your competitors.
Length is important.
Including a keyword.
If you are selling a domain name for SEO purposes, then the value of the domain in question is based on either the amount of relevant traffic or if it is not a developed domain (and you are selling it because it is a "single keyword" name) on the keyword value. If you don't know the value of the keyword.