I'm coming from an 04 330Ci Sport Package, and that car was great on and off the track. Got 30+ MPG on the freeway, and had plenty of around-town torque and would get to any 'necessary' speed on the highway when needed. In my opinion it's one of the most understated BMW's. Great luxury too.
However, when I hopped into an M3 for the first time, and then picked up my E90- it's a world of difference. The steering is REMARKABLY better, quicker, and more responsive. The suspension is fantastic around town or on a spirited drive, and really gives you feedback to your butt much more quickly than in the E46.
Oh...the power- THE POWER. There were definitely a lot of times in the 330 where I needed MORE power because of the situation I was in, whether it be the freeway or the track, but the M3 trumps all situations. More torque in the M3 would be great, but slap that SOB into M Mode, and get your throttle response ON.
Honestly, what I miss the most about the 330 is the fantastic gas mileage... where the M3 is the exact opposite in terms of 'range'. However, the 330 got 7.9 on the track, and supposedly the M3 does right around there... funny how that happens.
I don't think you would be disappointed at all by switching to an M3, but I would highly suggest keeping a higher MPG car in the family.
Few more things that I disliked about the 330: no LSD, no oil cooler, no oil cooler monitor.. Which made me feel "in the dark" at the track, because I had no gauge as to how hot the car was running. And no LSD SUCKS.
M3 is the best of both worlds, but it would be nice to have just a FEW extra MPG's in there.
2008 E90 M3 / 2013 F800GT
"You gotta fix the nut behind the wheel before you fix the bolts on the car"