I also think that the Amex Starpoints card is hands down the best value there is out there.
In comparison to Diners, it only has $30 annual fee. It is much more widely accepted than Diners. There's the 5,000 bonus mile transfer to any airline you choose from their list of 25+, not just to BA as Diners would limit you to. Finally, there is NO FEE for transferring your hard earned miles.
I do know Diners offer a 60 days grace period and pretty good car rental insurance. Besides these two benefits, which many here may place tremendous value on, the Starwood card cannot be beaten, in my opinion.