Just to add this much too: If you're purchasing a used car, like an e46, it is going to come down to a couple things, but mostly, how the previous owner took care of maintaining the car. If you get a car that wasn't kept up, then you're going to spend more than average, catching up on what wasn't done. Second to that, is going to be parts wearing over time. Some parts are only going to last so long before needing to be replaced, and sometimes aren't on the normal schedule for maintenance (like window seals, etc). Those are the incidental things that many cars will suffer over time, and ours is no different.
It's kind of hard to say which model is most reliable. Taken care of properly, they'll all hold true. But there are some models more prone to certain things (subframe, etc) than others, but again, the main thing is how well it was looked after by the person before you.