In Pro C# 2008 it is stated
Using constructs such as AppIDs, stubs, proxies, and the COM runtime environment, programmers can avoid the need to work with raw sockets, RPC calls, and other low-level details.
It then demonstrates a VB6 call where a COM object is instantiated by passing in the AppId. Then, a method call is performed on said object.
Does this mean COM allows IPC directly with objects? Is this secure? Why does .NET disallow this behavior?