Smart Client applications have suffered a bit because of lack of definition. When the question 'what is a Smart Client?' is asked, too often the answer is 'you know it when you see it.' The folks at Microsoft are quite aware of this.
Microsoft teams connected with the company's Patterns & Practices groups have worked with customers in the field to bring better definition to Smart Clients. What they have come up with is the Composite Application Block. It provides a programming model and common infrastructure components for smart client applications.
As pointed out on edjez's blog, client interfaces increasingly comprise views that might come from different teams or need to evolve independently. Synching those architectural views can be a chore. This is one of the 'gotchas' that can haunt portal-oriented development generally, and Microsoft Smart Client development specifically. That's where useful patterns and practices, such as the Composite UI Application Block, come in.
The application templates offered below require the .NET Framework 2.0 to run. They include documentation and code. We highlight the Visual Basic .NET version, but a C# version is available as well.
On the release of CAB - edjez's WebLog
Composite Application Block patterns pages - MSDN
Picking a .NET smart client communications technology -TechTarget