Definitely Marriott IMO.
If you're staying for any length of time, it's pretty easy to get up to 235K Marriott points. You can then convert these to a travel package, which is 120K BA miles, 7 nights in a Marriott category 5 hotel and 25% off a Hertz car rental. 250K points gets you a category 6 hotel.
Marriott also tend to have offers on a couple of time a year. The current promotion is 10K bonus points for every third stay, up to a maximum of 30K points.
Cheers,
Rick