.NET provides a complete new environment for writing a wide range of application types, from desktop applications and custom controls to Web services and ASP.NET pages. The use of the common language runtime and the Intermediate Language makes it easy to develop mixed languages in distributed or single-process applications, and the provision of .NET Remoting and XML Web services provides an infrastructure for developing distributed applications.
COM-based applications and system services will still be around for some time, and Microsoft has provided the COM Interop technology within the .NET Framework to enable smooth interoperability between COM and .NET components. Runtime Callable Wrappers enable the use of COM components and fully featured ActiveX controls in .NET applications, while COM Callable Wrappers let you use .NET components from COM client code.
There are fundamental differences in the ways in which COM and .NET operate , which means you sometimes must take particular care to ensure interoperation works correctly. Youll meet many of these occasions in the chapters that follow.