Answer:This subject causes a lot of controversy, as you'll see if you read the mailing list archives. Take a look at the following two threads:
discuss.develop.com/.../wa.exe
discuss.develop.com/.../wa.exe
The bottom line is that .NET has its own mechanisms for type interaction, and they don't use COM. No IUnknown, no IDL, no typelibs, no registry-based activation. This is mostly good, as a lot of COM was ugly. Generally speaking, .NET allows you to package and use components in a similar way to COM, but makes the whole thing a bit easier.