I'm going to assume that the S4 and HTC One are both out because of price (if not, then I'm with the HTC One).
Given a straight N4 v S3 fight .. well, obviously, it's horses for courses and depending on how you want to use your phone, there could be a stand out winner - for example, if you absolutely have to have two or three movies on your phone at all times, the S3 is the way to go. If you're an Android purist and want the phone that will keep getting latest versions longest (and before everyone else), it has to be the N4.
For me, they're both excellent phones and each has it's advantages. I'd be happy with either - I'm absolutely delighted with my N4 - so I'd go for whichever works out cheaper overall.
If you're going with a carrier-subsidised phone rather than buying outright, you're probably going to get a better deal on the S3 - the N4 deals I've seen look really lousy, though I haven't checked them in a while.
If you're able to buy outright, I think the N4 is probably going to be the cheaper option.
Given the choice, I prefer to buy outright and not be tied to a network, but if you have a really good legacy deal - say with unlimited interweb at a really good price - that could swing things the other way.