I had little time to peek into WebParts introduced in Whidbhey. It is awesome. Lets talk little bit about this framework. The reason behind the WebParts framework is that you can build your website with more personalization in easy way. To be precise, an WebPart can drag-drop anywhere in the page and the elements in the WebPart can be added or removed by the user. It means, the user can customize the page for himself, and all you get without writing any complicated JS scripts or CSS.
The entire ASP.NET architecture allows us to deal with WebParts, since it is has very flexible architecture in terms of its class framework and underlying design patterns. You are allowed to use any server controls in a webpart, say you can use Calender control or a GridView control (any control that inherits WebControl class) in a webpart, so the entire control gets the features of WebParts framework. Even, you can create your own customized WebParts by inheriting WebParts class.
You should read this MSDN article to learn about WebParts.