Let's be clear here; I was hooked/set on buying a BMW long before I could actually afford to do so.
First car was a '96 Dodge Stratus sedan. Some girl pulled out in front of me and totaled it. Next was a '98 Honda Civic EX sedan followed by a '00 Honda Accord EX sedan.
I drove the Accord for the majority of my time in college (~5 years) and was planning to just get another (newer) Accord for money reasons. During my search I realized that an E90 330i was well within my budget ...and the rest is history. Now I drive an '06 330i, but I wish it had sport seats and I REALLY wanted a coupe. Now I have to decide if I want to A) modify the 330i B) pay off my other debts, save a little bit and trade it in for '12-'13 E92 335i in a year or so when I can afford the increased payment.