Difference between COM Component and .Net component

COM componets contains unmanaged code where as .NET Components comes with managed code.

We can call a dotnet component from COM Component Vice versa

.NET componets are called as Assemblies and these are DLL files.these files are pre compiled.

COM components are binary standurd (platform dependent) towards windows platform where as .NET components are platform independent.

for coming to the memory management,CLR doesn't provide any memory management features to COM components becose these belongs unmanaged code.

 
Unlike pure .NET Components COM components must register before they can be used.After
Registered these components need to be imported by using Type library Importer Tool (Tlbimp.exe).

COM components cannot support Shared/Static members

COM does't support the parameterized constructor

COM cann't support the Inheritance

Operating systems other than windows don't have a registry.So very less portablity .