I've only bought 2 cars (both Doopers) from main dealers for 2 reasons.
First reason - I couldn't afford to buy the wife's car outright so took a finance deal, car is mine in May as it will be paid off in full.
Second reason - it was a trade sale. A dealer had the exact car in the exact colour combo that I wanted (pepper white/ black) however the only pitfall (from his perspective) was it had 127,000 miles on the clock and it was cheap because of this so I bought the car for a song and outright. I paid half the price on my car compared to my wife's car and there is only 3 months between them with her's being the newer of the 2. My car came with a service/ maintenance history that would choke a horse and the original owner done whatever it needed and never scrimped on maintenance. Looking at its file he was clearly anal about maintenance like myself and serviced the car every 10,000 miles from new and had a few in between services from the TLC pack he took out. Needless to say my car is the better driver of the 2 and now has 140,000 miles under its belt and all I've done to the car is rebuild the turbo (preventative maintenance), renewed the front disks/ pads and brake flexi pipe and service it every 6000 miles or less. BMW agreed to respray the car under the 12 year warranty as it had a few spots of rust dotted around the body so the car's paint now is like new and in my care it has passed the last 2 MOT's with a spotless sheet!
The R50, I bought that cash from a private seller from a Gumtree advert 3 years ago and that car is pretty mint and still in the fleet however it's in reserve atm. All it needs is an MOT which it will pass and taxed so if anything goes wrong with the other 2 cars then this will be operational and on the road within 2 hours or less