Search code examples
.netcom

What is the Difference between .NET components and COM Components


What is the Difference between .NET components and COM Components, sometimes we use .NET Components to include in our projects and sometimes we include COM reference. What is the idea behind?


Solution

  • .NET components are managed code (memory disposal is done for you)

    COM is an interface standard for software components. COM components are unmanaged code (memory disposal is performed using reference counting).

    From here:

    How are COM and .NET related?

    COM and .NET are complementary development technologies. The .NET Common Language Runtime provides bi-directional, transparent integration with COM. This means that COM and .NET applications and components can use functionality from each system. This protects your existing investments in COM applications while allowing you to take advantage of .NET at a controlled pace. COM and .NET can achieve similar results. The .NET Framework provides developers with a significant number of benefits including a more robust, evidence-based security model, automatic memory management and native Web services support. For new development, Microsoft recommends .NET as a preferred technology because of its powerful managed runtime environment and services.