The SharePoint WebPart has its roots back from the 2003 version where it inherited directly from Control because ASP.NET had no concept of a web part and SharePoint as in many other cases implemented a lot of the functionallity which was moved into ASP.NET 2.0 in order to allow SharePoint to become a real ASP.NET application in 2007.
After ASP.NET 2.0 introduced its WebPart, the SharePoint WebPart base class was reimplemented to inhert from this, but hide the changes the ASP.NET team made from classes inheriting from it. The main reason for it to exist was to ease moving 2003 WebParts to 2007.
That said there is still some functionality which only the SharePoint WebPart base class provides as described in Web Part Infrastructure in SharePoint Foundation
Following is the list of features provided exclusively by the SharePoint WebPart class:
- Cross page connections
- Connections between Web Parts that are outside of a Web Part zone
- Client-side connections (Web Part Page Services Component)
- A data caching infrastructure that allows caching to the content database