Stick with MB if possible
I don't have any new MB's (my "newest" car is an '86 300SDL) but my wife just bought an '01 325i sedan. We have put less than 15,000km on it (about 9000 miles) in the last 10 months and have made more than 5 trips to the dealer. They have replaced parts of the drivetrain and ended up replacing the entire differential to stop a clunking noise. Check engine light came on twice because of bad sensors. Now the ABS and Traction control lights are on.
The car is under warranty, but it's a huge hassle taking this thing in every month or two. It scares me to think how much these things are going to cost once it's out of warranty! I have no idea what a differential costs for this car, but I'm sure it's VERY expensive!
We bought the car with 40,000km (about 24,000mi) and it now has 55,000km (about 33,000mi). The dealer doesn't seem to think ours is out of the ordinary. Not to say all of the other 325's are like this one, but they don't act like there is anything wrong with replacing a differential at 30,000miles! This was a one owner car and passed BMW's "certified pre-owned" inspection. Car burns oil at a rate of 1 quart per 2000-3000km which the dealer says is "normal". Yeah, right.
Stick with MB if you can. I know the newer ones aren't as good as the old, but I'm *certain* the new E320 and E500 won't have the problems this new 5 series is going to have. There are a TON of new 745i's in the shop at the dealer every time I go...
Just for reference, my wife has decided her next car is going to be a '93-95 E300D (W124). We thought we'd keep this BMW for 2-3 years, but she's "shopping" for a Benz just 10 months into ownership of this one.
'83 300SD 335,000km (207k) mi
'87 560SL 163,000km (101k mi)
'86 300SDL 356,000km (220k mi)
'92 500SEL 250,000km (155k mi)
'90 300SL 140,000km (87k mi)
'01 S430 260,000km (161k mi)
'03 SL500 167,000km (104k mi)
'07 GL320 CDI 4MATIC 289,000km (162k mi)
'07 S550 4MATIC 170,000km (105k mi)