A few months ago, I got a text message from a friend mulling over whether to proceed with working on and learning ASP.NET WebForms, or to go straight to ASP.NET MVC. I wrote my response out in the Notes app, copy/pasted and sent.
After flipping through old notes and clearing them out, I found it and was actually found what I wrote kind of delightful, so I'm posting it here.
WebForms: "Lets bend the web using our will to make it work like WinForms! We are strong, web standards weak!"
MVC: "Rails is cool. Let's do that, but on .NET!"
WebForms: Component/Controls and Widgets! N-Tier for data access, business logic...
MVC: Models, Views, view models and Controllers. You can N-Tier if you wanna.
WebForms: Framework is still being maintained. Will stick around in system .NET, but no support in .NET Core.
MVC: Framework is evolving; MVC and WebAPI are now one/together and being ported to .NET core.
WebForms: Jobs that work on legacy applications and systems.
MVC: Jobs that work on modern and/or new builds.
WebForms: Basically recompile on every freaking change.
MVC: Less recompile's thanks to @razor view engine.
I'd choose MVC over WebForms almost every time, simply for the fact that WebForms isn't going to be supported in .NET Core. And MS has been making a BIG push on making .NET core relevant and very, very performant.