Microsoft's component object model allows programmers to create objects (programs) that can run from any Windows desktop environment.
The basic architecture of the model defines the interfaces of the objects and different ways that they can be executed. COM allows objects to be created in almost any programming language and affords the programmer the ability to incorporate a set of third-party controls such as OLE and ActiveX. The COM+ standard introduced improvements to the original model.
While COM hasn't been deprecated, many of its functions have been integrated into the .NET effort.