I feel that all the comments so far are totally valid. My personal opinion is that the factors that drive me toward DNN4 development are:
* Object Data Sources. This allows you to create a web control and bind directly to it and still maintain proper full n-tier design. This is no small thing. It is a new concept and once you start using it you will not want to go back. See: http://www.adefwebserver.com/DotNetNukeHELP/DNN_Module4/DotNetNuke_module_7.htm
* Generics. This is something that can be simulated in ASP.NET 1.1 but with a LOT more code. Yes you can create strongly typed classes but to do so you have to implement interfaces etc. With Generics you simply code something like:
Public Shared Function GuestBook_GetAll(ByVal ModuleId As Integer) As List(Of GuestBookInfo)
Return CBO.FillCollection(Of GuestBookInfo)(DataProvider.Instance().YourCompany_GuestBook_GetAll(ModuleId))
End Function
and you have a strongly typed class.
* GridView and other controls. A bunch of commonly used controls simply don't exist in ASP.NET 1.1 Once you start using them you will not want to try to code the same thing without them.
Again, if you are selling modules on snowcovered.com you still have a market for DNN2 modules not to mention DNN3.
http://ADefwebserver.com