Has the introduction of the .net framework made raw programming in COM and DCOM redundant ?
(Except for using some COM+ services, e.g. for transaction management through the System.EnterpriseServices namespace)
Not yet, because the OS is still unmanaged.
If MS finally do what their labs have been talking about for years and produce a fully managed OS then it will.
That OS won't be backwards compatible though. They would have to produce managed versions of Office, IE, etc first. They will have to produce a virtual machine to run unmanaged apps.
The pain would be something similar to the move from Mac OS9 to OSX.