title: Difference between typical Windows and .NET binaries
body: <p>What is the difference between typical Windows (WIn32? COM? Not sure what they are called.) DLLs and the DLLs that are compiled using .NET?</p>
  
  <p>I know they are different, but I do not know the inner workings in detail.</p>
  
  <p>I would love to know what the exact difference is.</p>
  
  <p><strong>EDIT: Trying to add more of my doubts here:</strong></p>
  
  <p>Why is it that I cannot add a reference to a Win32 DLL like I would add a reference for a .NET DLL? Also, why do we have to do a PInvoke? How do we have reflection and intellisense for .NET DLLs but not something similar for Win32 dlls?</p>