MVC stands for Model View Controller – An MVC is a design pattern, meaning it’s not a distinct piece of code it’s more a way of way of arranging code into organised reusable sections/pieces.
The controller part receives the input from the user and then directs the model and the view what to do with it.
The model section processes the data which in Joomla's case and in most MVCs involves a database but it can also include an external data source.
The view section requests the model data and displays it in articles, categories, modules etc using a layout or several layouts. With the separation between model and view it enables us developers to design the html output without potentially breaking any database queries.