The two aren't very similar. COM had to do with accessing Windows resources. It was always, to some extent, external to your program, whereas OOP is a design philosophy that can be implemented down to nearly the smallest granularity of a program. COM makes for an interesting read, but it is too unlike OOP to even begin to compare the two. Kind of like comparing an apple to a basketball: One is round, the other is round-ish, and beyond that the comparison just gets silly.