Entrambi i framework separano la logica di presentazione da Business Logic, tuttavia la differenza sta nel modo in cui viene raggiunta tale separazione. Con 3 livelli, tendo a pensare agli strati seduti uno sopra l'altro. Con MVC, i componenti siedono fianco a fianco.
Con MVC, il controller è la chiave di volta dell'architettura, mentre con il livello n è la vista / l'interfaccia utente. Con un'app MVC chiami un'azione nel controller, che può o meno eseguire una visualizzazione. Con un'app a 3 livelli devi passare attraverso l'interfaccia utente.
Uno degli svantaggi del sistema n-tier è che la logica aziendale può sanguinare nel livello dati o nel livello di presentazione, con MVC, penso, è molto più facile mantenere un'adeguata separazione delle preoccupazioni. Questa però è la mia esperienza e preferenza.
Come altri hanno affermato che MVC e n-tier non si escludono a vicenda. Il back-end della maggior parte dei siti MVC su cui ho lavorato sono di livello superiore. I controllori chiamano un servizio, che a sua volta chiama un repository.