I want to know what are the exact differences between .NET dll and a normal dll.
First question, what is \"normal DLL\" called? I\'m using the word \'norm
Only thing to add to the other answers posted is that a c/c++ '.dll' file is just a naming convention - you could call it whatever you like hence .ocx and .cpl.
A c/c++ dll is a set of code and data that gets loaded at runtime using LoadLibrary and mapped into the callee's address space. It is still compiled to native code but doesn't have any concept of it's target address space because it's designed to be patched and fixed up by the loader.