http://support.microsoft.com/kb/893667 - This article discusses user control and custom control differences. The pros of using them both is that they offer you extensibility to controls that are already in ASP.NET, and they offer re-use of your own code and support within the visual designer that Visual Studio offers you.
The cons are that there is a learning curve - although this article should bring you a long way along to understanding how to create them and how to use them.
ASP.NET Framework controls are included with the .NET Framework and offer some functional components, but they may not do everything that you want them to do. By creating a custom control based on a base control, you can extend the functions of the controls to make them do something unique or specific for your applications, and then re-use them between projects.