(I am a very beginner in MVC)
I mean to have a business logic layer with the domain models and an application service layer with view models and controllers obtaining view models only from application service methods. Controllers doesn't contain any logic and the MVC models are the view models (from the app service layer) which contains logic only related to displaying.
Any tutorial I have seen on ASP.NET MVC focuses on having logic in controller classes, but I think in this way (in a large app) you can duplicate business logic, writing redundant code.