The NSX first of all is the better driver's car, it has some of the best handling characteristics of any car I've driven, and while the E46 M3 is a good car, it doesn't really compare. Yes the NSX was overpriced when new, but because of that they are fairly rare cars and most of them have been well taken care of. People didn't just buy an NSX to have a sports car, you had to want an NSX.
Then we get onto engine note. Now the M3 has a decent sound to it but it's not exactly spectacular. The NSX however, especially with a modified exhaust system, is spine-tingling. Although I don't like to factor these things into deciding which car is best, some people may appreciate it. The M3's motor is essentially maxxed out, you aren't going to gain much more without insanely expensive modifications. On the other hand the NSX has tons of room to grow and you can actually get as much as you feel the car deserves and the car still be reliable.
And for the boring part, long-term ownership: the M3 falls down hard. It's not a particularly special car like the E30 M3 and that will hurt future resale value quite a bit. With the procession of ever-improving M3 models this just forces the price down even further. That's why the NSX, a car which will NEVER be replaced by Honda/Acura in the lineup, will maintain it's value much better in years to come. Add into that impeccable reliability and reasonable part/repair prices and you have a supercar that is pleasant to own.