I had an E46 while living in England for a few years because I got a good deal on it. It was an M-Sport Coupe (not an M3) with a 3.0L and a 5 speed. Had the M3 suspenstion package etc. A total blast to drive on the narrow curvey roads and in fact has convinced me that straight is not the only direction a car should be able to go.
HOWEVER, every time I had to have work done to it, it was expensive. I had no time and no shop to work on it myself. I had a steering sensor go out and it was over two hundred dollars just for the part (non bmw). The BMW part number (same darn part/mfg) was almost twice that.
I agree with the others, in only buy one if you know how to work on it yourself and don't mind the expence of the consumables, or it's under warranty.
I loved my car, it was great, had a lot of fun but wouldn't do it again.
-C
What's the difference between a BMW and a porcupine? A: the BMW has the pricks on the inside