I have the Marriott Visa, Chase Sapphire, Hilton Honors Amex, Disney Visa and the Starwood Amex. I just got the Chase Sapphire - primarily for the no foreign transaction fees - so I can't tell you much about that one right now. I plan on using any points from the Chase Sapphire for flights.
For pure HOTEL rewards, the Starwood is best, IMHO. You get 1 point for every dollar so it is easy to tell what you are earning. You can get a free room for as little as $4k in spending with Starwood and they also have cash and points. So for example, a room at the Sheraton Lake Buena Vista is 7k points, or 3500 points and $55. You can get a hotel elsewhere in ORlando (farther from WDW) for 4k points. Of course, more expensive hotels or peak seasons are more points, but I tend to get more free hotels faster with Starwood than I do with Marriott, which is 2nd best, IMHO. Marriott has a lot more brands and choices, which is nice, but I feel that it takes longer to earn enough points for a free room.
Disney is good for charging Disney vacas, getting the 6 months to pay, and using to save up money for a Disney vacation.
Hilton stinks, it takes forever to earn free nights, their point system I don't even understand. They did just add a feature this year that if you have their credit card you get automatic gold status, which is the one good thing I can say about it. I would get rid of it but for 2 things - I have had it forever and for some reason I have a huge credit limit on it, so even though I never use it, if I cancelled it at this point it might bring down my credit rating...
The other card I use is Hawaiian Airlines. I don't use that one a lot, and their customer service is the WORST of any credit card we have, but I have had it for a few years and I just have been accumulating points in hopes of going to Hawaii in a few years. Right now we have enough points for a R/T first class ticket to Hawaii - yeah! - but once I finally use those points I am getting rid of that card because they really have the WORST automated system, and they charge you a late fee if you pay after 8pm (or maybe even 5pm?) on the due date - even if you call them before it is due and they put you on hold for 20 minutes and it is one minute past their deadline when they pick up so you can pay by phone, they will zap you with a late fee. (if you can't tell this happened to me once and I am still PO'd about it

.