DCOM is a wire protocol, COM is the programming model and runtime. The distinction you are making is not very useful and hasn't been for the better part of the last 10 years, littleguru.

To the rest of the discussion...

Remoting isn't dead and neither is COM. The level of future investment in both technologies will be proportional to how widely they are being used and respecting the WCF is the strategic technology foundation.  That means that Remoting is in maintenance mode, but it's not dead. It's the primary technology to talk between appdomains in .NET apps and a core part of the .NET Framework.

Remoting isn't and was never meant to be a replacement for COM and therefore the "better or worse" discussions or even "conclusions" don't make much sense. In terms of features Remoting doesn't even get close to COM (or WCF for that matter), because we never built it out to become a replacement. It's an easy way to serialize objects and get them (or references to them) across a communication link. That's it.

And, Black Tiger, for the vast majority of distributed systems use-cases, WCF is indeed a very complete replacement for COM these days. Ever since MTS and then in COM+ we have promoted a set of usage patterns for COM that is (un-)surprisingly close to today's web services model. With JITA you decouple client and server instancing (default model for WCF), you should best not pass objects by reference, etcetc.

In terms of performance WCF is in striking distance from Enterprise Services/COM+. We're not beating it in all scenarios, but we've got good reasons to hope that we'll eventually do beat it in a future revision of WCF.

I concur with littleguru's summary that WCF is the way to go, going forward. Not only do I concur, I happen to have very strong evidence that that's the way to go. I work on the team owning ALL of those technologies (COM, Remoting, WCF) that I just mentioned. Big Smile

Cheers
Clemens