The MVC concept is clear and logic and the guys at Microsoft did a very good job with the new MVC Framework , But I think I will stick with the 'old fashioned' WebForms and this is why:
1. I don't need anybody to 'force' me to seperate my code into layers. I do it any way in every site I build. I have a DataAccess layer, a Business logic layer and a 'View' layer, and I know exactly when and where to use each layer.
2. I build web sites. I don't need my code to work with any other 'View' other than HTML, and if I do, as I mentioned before, my Business logic layer is in a seperate dll so I can reuse it.
3. One of the first things I do when I start a new project is to disable the ViewState in the web.config, which leaves me with a hidden field with about 50 chars length (aroung 50bytes) - I can live with that. That will not slow down my site. If the page is not doing any POST, I can remove the <form runat="serve"> from it, and then there will be no ViewState at all.
4. I heavily use JavaScript and Ajax (usually with jQuery & my own js 'framework') to give better user experiance.
5. The only 'Databinding controls' I use are Repeater and ListView (and DropDownList) that are rendering exactly the HTML I want.
6. The only server control (other than 'Databinding controls') I use are HyperLink,Literal and PlaceHolder that not render any extra HTML other then what I want.
7. I heavily use inline expression
8. I use short 2-3 chars names for my controls.
9. I do use NUint (truly, only when I must)
10. I use httpcompression to improve performance.
11. I use Url rewriting if needed.
12. My code is well organized and very easy to maintain.
13. I know all the little secrets of the ASP.NET framework and know how to take it to it's limits
I bet my sites have no worse performance than MVC sites or any other technology and I'm sure it will take me less time to build a well organized site with all the points above.
I built and designed tens of sites. From small, medium to very large, and never had a performance problem that couldn't be solved by using the above points.
Use MVC if you want to be cool. I will stay with my oldy friend - WebForm
Why should I replace a winning horse ?