Если по простому. Вот представь ты работаешь над сторонним проектом в котором куча кода, допустим есть какой то файл в котором лежит верстка, в этом же файле лежит обработчик формы(например форма регистрации), которую например нужно сохранить в базе и отправить на email подтверждение регистрации и в этом же файле лежат классы какой-нибудь сторонней библиотеки для работы с отправкой почты.
Удобно будет работать с таким мусором? Думаю нет, а если еще над этим проектом работают другие разработчики, а некоторые из этих разработчиков к примеру фронтенды, которые не особо разбираются в backend части проекта, сколько им времени потребуется разобраться в этой каше, чтобы например только добавить пару полей формы или изменить ее структуру?
Чтобы такой каши не допускать существует MVC, тоесть из данного примера классы сторонних библиотек выносятся в классы - модель(Model), файлы верстки в View(верстка), действие формы обрабатываем через Controller(контроллер)