El concepto básico de MVC es mantener separado tu programa en 3 partes (o probablemente mas partes), que son la lógica y el almacenamiento (modelos), la presentación (vista) y la parte donde atas los eventos con los modelos y vistas (controladores).
En tu ejemplo en tu aplicación, podrías tener la gestión de usuario en 3 partes, donde es la lógica y almacenamiento de gestión de usuarios, la presentación que puede ser desde una interfaz en CLI o GUI hasta una plantilla web y los controladores que son los encargos de responder a ciertos eventos que el usuario haga. Por ejemplo click en un botón o submit en un formulario.
Otra propiedad importante de MVC es que trata que hagas las cosas independiente una de otra (mutuamente exclusivas).
Por ejemplo el hecho que modifiques un modelo, no va a afectar un controlador o a una vista. Así para cada uno de las 3 partes.
MVC ademas aplica la modularización (división por módulos) al igual que (regularmente) muchos
patrones de diseño.
Por ultimo, no hay formas correctas o incorrectas de hacer las cosas en programación solamente hay formas. Pero solamente es la experiencia la que te dirá cual es la forma indicada.