So what have we learned?
- Don't just throw parts at it from now on. If you have a problem, post it on here or do much more reasearch on here than you were doing, before buying parts.
A lot of people in your situation blame the car. But the problems your having are very normal for a car with >100K miles. They are normal maintenance items or might not have been broken from the beginning.
- Don't buy cheap parts. My local BMW shop will match online prices, so take ECStuning prices and see if your place won't match that. It will save you A LOT of money.