This is going to be a debating question (but please no personal attacks when answering) and a question that goes against, I believe, a majority of Microsoft Developers!
Many people thinks that ASP.NET is very good and a big leap from it's old ASP technology. However, I guess I am one of those minority who is actually against the idea of moving to ASP.NET. Please argue against or support each of my points below.
1) Object Oriented vs Functionality.
I go for functionality because many applications are yet to be so complicated that they really need Object Orientated Methology. Object Methology is not easy to understand and takes a long time to design. It's also blurry to design when human roles in a business environment can be very unpredictable or grey. So I go for functionality because many of our business functions are function based and is often communicated in that manner. It is required and needs to be done until business rules are changed.
I have done full Human Resource and Supply Chain Management systems for government and MNCs. For these areas, I find the functionality approach could achieve very good results against the object orientated approach. I shall not give example for now but if you need example to explain my point, please do ask.
2) Compiled vs Non-compiled
Non-compiled code to me is very good and damn good! It has saved me a lot of time having to compile program again and again just because I have made some changes. The error line, Response.Write and Response.End is really all it need to debug a page. I also realise stepping through code is really not necessary and is in fact wasting your time because you have to press Next, Next, Next ! What is important is seeing until the last result just before the error. That way it's quicker to visualize and capture the problem!
3) Those new ASP.NET html controls are BAD!
Those controls are complicated and difficult to familiarize! The normal HTML controls with Javascript and CSS are actually good enough to do tons of stuff. For example. the datagrid is a nightmare to me which in fact can be done with some good javascripting. In fact, to me, it's also bad trying to mix the ASP code with the javascript code. It's much easier to separate them distinctly and the GUI is sometimes easier to design in that manner.
4) ASP.NET is an overkill
Despite the few commands that are available in ASP, there are actually enough to do almost everything you should do at the server end. CDONTS is there for SMTP, FileSystemObject for file processing, ADO for database access, RegExp for regular expression, Dictionary for key pair values, .... The variant variable is also a marvelous feature and takes a load off declaring everything. This means I only care about variable type only when necessary.
That's all for now. So shoot me but NO PERSONAL attacks!