I have about 95 or 96,000 miles on my E60 at this point. My father gave it to me when I graduated college. My Grand Cherokee had become too unreliable and not worth fixing. The cost of ownership with the BMW is gut wrenching. My battery change cost $500 due to "reprogramming", whatever that means. I had a bunch of suspension work done as well as a new starter, let's just say the cost was about 1/3 of what the car is worth, if not more. It's too much money to dump into a car that old, in my opinion. It's a fantastic car, but as I've mentioned before I'd prefer and SUV or possibly something less ostentatious.
From what I understand with VWs (which have a Cost of Ownership not that far behind a BMW) "Reprogramming" means the car's computer and alarm system (and i think even the starter) have to be "reset" so the car doesn't keep bitching that battery is shot and so the car can start. I don't know much about it but I do believe it has something to do with the car not properly using the battery or charging it if it isn't reprogrammed. I believe that on a VW if you dont reprogram the car after a battery swap various things such as the alarm, stereo and power windows will not function. It's also not uncommon on VWs for the alarm remotes or keys to become "unprogrammed".
My sister had 2 99 Beetles before. One of them needed a new seatbelt which cost $250 (you can buy a seatbelt at autozone for $20), The door lock broke in the car that cost over $300 to replace.
On a simular note, My sister also had a 2002 Saturn SL. She got rid of it because it had over $2000 in repairs needed. Repairs included a new water pump, 4 new tyres, a new windsheild, new window crank on driver's side, and a oil change. Saturn's are total garbage.