webforms is a control tree design. that is the server build a control tree in memory, then walks the tree and calls the render method on the tree control to produce the html. when the aspx file is parsed, a control tree is built using server controls. your code behind has the option to update the control tree before render. pseudo events are generated to mimic control events based on post back data.
MVC 5 maps the post back data to a model, calls a control method to process the data and create the view model. the view model is then passed to the razor template engine to render the html. webform server control are not used, but technically they could be used by creating an instance of the control, and calling the render method go get the html it would produce.
asp.net core was a rewrite of MVC 5 only. it does not have any webform support, so no server controls. also asp.net core and the razor engine only support C# (but can call libraries within in VB.net). razor tag helper support was added. these are something like the old server controls, but are just templates and have no post back event support.
asp.net core then added razor page support, an alternative to MVC. the razor template engine and the postback data and controller method binding are supported by a single page. the folder structure can be used to define routing. this is the recommend for porting webform code, but is still requires a rewrite of all the aspx code.
lastly asp.net core added blazor support. this is a component tree design. the components are built with razor component syntax (different from razor page tag helpers). these components can directly process browser client events.