I really liked the 135i, but it felt a lot like my turbo E36M3 and I wanted a second car that was different. The 335i can be modded to be just as fast as the E90M3 in a straight line and around a track (Grassroots Motorsports did this a few years ago with James Clay driving both), but you have to spend some money on the 335i. Ultimately, that is what swayed me from the 335i -- the amount I would have wanted to spend on mods. The M Sport version might be decent right out of the box, but I have not driven one of those. The E46M3 was also on my list. They need some work as they get older. Valves have to be adjusted. Subframes tear. The suspension on a 7 year old example may need some work. Great car, but be prepared to spend some money to repair and maintain it. The E39M5 also tempted me, but it also requires some money for repairs and maintenance. I have a lift, compressor, press, welder, etc and do all my own work, but I already have a modded car -- my turbo E36M3 -- and the second car was to be mostly left alone and not require much work. The older cars on my list would just be getting older and needing more work so I was leaning towards the younger cars.
I bought an E90M3. To hedge my bet, I bought one with about 18 months of factory warranty and 2 years of CPO on top of that. It cost $45k a little over 2 years ago, which was $10k more than a 135i or 335i and $20k more than an E46M3 or E39M5. But I have not had any problems with it (though I was prepared with the warranty) and have not needed to mod it (although I did about $3k worth of mods). I wanted a modern, comfortable, fast, good handling car and I got one. It is my daily driver to the extent I drive daily -- sitting outside on snow tires right now.