This is a classic article on MicroSoft ComponentObjectModel, by DonBox who is now onto MicrosoftIndigo stuff, I think. * It can be found here: *** http://www.microsoft.com/msj/0399/com/com0399.aspx ---- '''Summary''' * '' by default, COM objects marshal by reference. That is, when passing object references as method parameters, Co-Marshal Interface creates a stub to allow MethodCall''''''s to be dispatched to the object from foreign apartments. Clients wind up with COM-provided proxies that send the stub request messages that trigger RemoteMethodInvocation''''''s.'' ---- CategoryComponentObjectModel