DCOM and CORBA are distributed object computing architectures that allow objects to communicate remotely. Both use a three-layer architecture - a top layer for programming interfaces, a middle remoting layer, and a bottom wire protocol layer. Key differences are that DCOM supports multiple interfaces per object while CORBA inherits all interfaces from a common base class, and DCOM's wire protocol is tied to RPC while CORBA's is not. Overall they provide similar distributed object capabilities with some differences in implementation details.