What is a Web Part?

A Web Part, in the context of an SPS site is a component that can be customized and easily placed onto an SPS site akin to a plug'n play mechanism. Further, the end user, apart from the developer, can modify the individual properties of the Web Part. But for a developer, a Web Part is nothing but a server side ASP.Net control. The Web Part class can be found within the Microsoft.SharePoint.WebPartPages namespace which is the base class that Web Parts inherit from. The WebPartPages class inherits from the same parent class as normal ASP.Net Server controls (the System.Web.UI.WebControls class) and you therefore inherit all the properties, methods and anything else exposed by WebPart base class.