I also wanted an E46 M3 but when I bought my first BMW (a 2002 330ci), there was a year long waiting list so I "settled" for the 330.
Early this year, I bought my 335i. I knew the new M3 was on its way, but I didn't care anymore at this point, and the 335i is a fantastic car!
My new philosophy is this: The M3 is a fantastic car, no doubt. But ultimately, it's a bit of a compromise. Although it has incredible sports car characteristics, is it truly a sports car? Instead of selling or trading in my 335i and getting an M3, why don't I just keep the 335i and buy a sports car instead?
Besides, considering you bought your car not even a year ago, you lose quite a bit of money selling your car to get an M3. The dealer WILL gouge you in this regard. With the markup and the gouging from trade in, expect to pay more than $20k than if you had waited and just boughten an M3.
Why not keep the 335i, save the money for a bit, and buy a Porsche instead? Trading up after one year doesn't really make practical or financial sense.