MVC is an architectural pattern which can be used to organize the logic within an application. Unsurprisingly, it separates the logic into Models (business logic, the bulk of the knowledge in the code), Views (UI display and logic) and Controllers (sort of an eventing model for the UI to interact with the business logic).
This is by no means the only pattern one can use. But it’s a commonly used one and fairly simple to understand. Whether or not to use it is an architectural decision on a case-by-case (or project-by-project) basis.