COM est la fondamentale « modèle objet » sur laquelle les contrôles ActiveX et OLE sont construits. COM permet à un objet d'exposer ses fonctionnalités à d'autres composants et d'applications hôtes. Elle définit comment l'objet s'expose et fonctionne de cette exposition à travers des processus et des réseaux. COM définit également le cycle de vie de l'objet.
Fondamentales de COM sont ces concepts:
Interfaces — le mécanisme par lequel un objet expose ses fonctionnalités.
IUnknown — l'interface de base sur laquelle reposent toutes les autres. Elle implémente l'interface interrogation de mécanismes en cours d'exécution par l'intermédiaire de COM et décompte de références.
Décompte de références — la technique par laquelle un objet (ou strictement, une interface) décide quand il est n'est plus utilisé et est donc libre de se retirer.
QueryInterface — la méthode utilisée pour interroger un objet pour une interface donnée.
Marshaling — le mécanisme qui permet aux objets d'être utilisés à travers le thread, processus et limites du réseau, permettant une indépendance de l'emplacement.
Agrégation — un moyen dans lequel un objet peut faire utiliser une autre.