If I had to choose between a BMW X5 and a Jeep Grand Cherokee today, I would go for the BMW straight away. However, if I had to choose between a 7 year old second hand X5 and a 7 year old second hand Grand Cherokee, I would have no doubt at all: I'd rather get the Jeep.
At first, the previous statement shocked me as it seemed to be a paradox. However, I do believe now there is no paradox at all. Let's just look at both vehicles. An X5 is a SUV, great on the road, but with no real off-road abilities. The Jeep, on the other hand, is an off-roader that can handle some tarmac. The BMW pretends to have the ultimate engineering, while the Jeep pretends to be built to last forever. That's why Jeeps age well and BMW's don't. It's in their spirit.
If you are a businessman and you are driving over 50k miles a year, like flooring your car in the autobahn and ask for refinement, luxury and sport manners, read no further: go and get yourself a BMW. It will serve you well. You'll be shocked by its chassis, built quality, quietness at high speeds and comfort. A brand new BMW is as good as a car can be. However, if you want an SUV to be your daily driver for a few years and then you want it to go off-road while you use another car as a daily driver, skip the BMW option and get yourself a Jeep. It will keep its qualities for a long time, making it a great vehicle throughout its life. After all, where is the point in an ultimate driving machine that is no longer the ultimate driving machine?