In the early 2000s, SharePoint emerged as a highly leveraged way for organizations to build portals and collaboration environments. For example, coordinating large teams toward a common goal is an excellent reason for a portal. Team endeavors such as software development require systems such as version control and bug tracking. If the team is distributed geographically or in some other way not part of the office network, the next logical thing is to be able to share information over the Web.
Without a framework such as SharePoint, developers would likely duplicate much effort between them. SharePoint introduced some prefabricated components to ease building collaboration sites (rather than building them from scratch). SharePoint Web pages are based upon a type of component named Web Parts. Web Parts are a way to package information and functionality for users.
While SharePoint is a stand-alone framework dedicated to building collaboration portals, ASP.NET 2.0 represents a broad-spectrum Web development framework that happens to have a built-in portal framework. That is, SharePoint represents a dedicated means to build portals, and ASP.NET 2.0 includes some classes useful for building portal-like applications. However, even though they're different development environments, they do share a principal concept between them—Web Parts. While ASP.NET Web Parts and SharePoint Web Parts aren't exactly the same animal, they operate similarly.