Now that we have the CompositeControl to inherit from in Asp.Net 2, that makes life so much simpler (no more EnsureChildControls milarky), I think there is a compelling reason for developers to consider creating Custom Server Controls where before they would have chosen a User Control and given the reason: "it's less hassle".
Coupled with the better integration in VS2005 (your control projects in your solution are automatically referenced and added to to the toolbox), and the benefits Custom Server Controls bring (miles better design time support, easy distibution amoung projects) then User Controls should only be used for application specific...