Here is my .02. I had a e60 545 for many years until I brought it in for some issues and it was going to be a 6k bill to fix. That was 45% of the cars value so I got rid of it. I figured I would trade it on a new e60 550 m-sport all options, carbon black, sport trans..... It was exactly the car i wanted but after 7 years in the same style car with "LCI, better stuff and more options". If I had to do it over again, I would have taken a different route. You only have two years in compared to my 7 years but it sounds like you have that itch. I would do some test drives, wait, re test drive and then decide.
I drove a m3 before but it wasn't until my sales guy told me to take a newly traded 2011 e90 m3(dct) for the day to see how I like it and come back a week to re try. Needless to say a e90 M3 is in my near future. It was the long/ multiple test drives that did it
17 M3 ZCP -- 12 X5 50i Sport
--- Laid to rest----
11 M3 DCT -- 2011 X5 50i (Lemon) -- 2008 550 Msport -- 2007 x5 4.8 sport -- 2004 545 sport -- 2002 x5 4.4 sport -- 2001 540i Msport
2000 SL500 -- 1997 SL500