In Web Forms, HTML is generated by a hierarchy of controls, each of which should be called to display HTML code, and each of them contributes to the ViewState page. In addition, during the life cycle, many web forms are launched using Web Forms (Init, PreRender, etc.), and each control in the hierarchy also triggers similar events.
In MVC, the process could theoretically be much simpler, since you don't have a deep hierarchy of controls, you don't have a ViewState, and you don't have to fire events. However, MVC "contrailers" are disconnected from the ASP.NET platform, and so behind the scenes a lot of material in Web Forms still exists, although this is not necessary.
source
share