COM è la fondamentale "object model" sul quale i controlli ActiveX e OLE sono costruiti. COM consente a un oggetto per esporre le sue funzionalità a altri componenti e applicazioni host. Definisce come l'oggetto stesso espone sia come questa esposizione funziona attraverso processi ed attraverso reti. COM definisce anche il ciclo di vita dell'oggetto.
Fondamentali per COM sono questi concetti:
Interfacce — il meccanismo attraverso il quale un oggetto espone le funzionalità.
IUnknown — l'interfaccia di base su cui tutti gli altri si basano. Implementa il conteggio dei riferimenti e l'interfaccia di interrogare i meccanismi che attraversa COM.
Conteggio dei riferimenti — la tecnica con cui un oggetto (o, rigorosamente, un'interfaccia) decide quando non viene utilizzato non più ed è quindi libero di rimuovere se stesso.
QueryInterface — il metodo utilizzato per eseguire query in un oggetto per una data interfaccia.
Marshaling — il meccanismo che consente agli oggetti di essere utilizzati in filo, processo e i confini della rete, consentendo per l'indipendenza della posizione.
Aggregation — un modo in cui un oggetto può fare uso di un altro.