Skip to Main Content
One of today's most pressing computing challenges is application integration: taking different applications running on different operating systems built with different object models using different programming languages and integrating them into robust systems for supporting critical business processes or scientific research programs. Application developers increasingly want and need to reach beyond tightly-coupled client-server environments to access functionality on remote systems that are very different in design and implementation, and which are owned and managed by other organizations. Because of its ubiquity, the Internet is driving this demand. Creating a viable architecture for web-based component interaction is one of the foremost challenges of distributed computing today, and is a major objective of Microsoft's .NET platform. Microsoft's strategy is to support creation of a standards-based architecture for distributed applications on the Internet, and then to enable easy application development and deployment by providing a specially adapted toolset and runtime environment for creating and running highly distributed applications. This paper describes the essential components of the new .NET framework, including the common language runtime, base class libraries, the services framework, and the programming models for building and integrating applications over the web. We examine these components in general, but take a special look at .NET as a platform for building and supporting web-based applications of the kind now commonly called "web services".