Esta é uma questão muito subjetiva em alguns aspectos, mas vou tentar responder as partes que podem ser razoavelmente respondidas.
O desempenho do MVC não é um pouco lento?
Não. É claro que é possível, através de uma implementação realmente pobre do padrão, causar um mau desempenho (mas isso é verdade de qualquer coisa e de tudo), mas o padrão em si não é inerentemente lento em qualquer consideração. O mapeamento de URLs para métodos de classes de controladores é totalmente trivial e não há razão para não ter um excelente desempenho.
Sim, haverá uma pequena quantidade de sobrecarga, mas também existem diferentes tipos de sobrecarga com aplicativos ASP.NET ou PHP tradicionais. Não pré-otimize . Em vez disso, escolha o framework / tools que faz com que você realize melhor.
A curva de aprendizado também é muito íngreme?
Sua curva de aprendizado é diferente de todas as outras, mas na minha experiência pessoal, foi exatamente o oposto. Com Ruby on Rails e ASP.NET MVC, descobri que o padrão MVC combinava de forma tão óbvia e intuitiva a natureza dos aplicativos da Web que a curva de aprendizado era praticamente inexistente. Pelo contrário, fiquei desapontado comigo mesmo por não ter sido o único a pensar nisso.