Managed Vs Unmanaged Code

Refer to the following.

Managed code runs in managed environment, a managed environment is the .NET runtime. Unmanaged environment means third party environment or application such as Internet explorer, database, VM Ware and etc.

This means that the .NET libraries and etc are all part of managed code while the codes that you write also is part of managed code because it is running on the run time.

Refer to the following.

COM components, COM+ services, the Win32® API are all unmanaged codes.

ActiveX® Data Objects (ADO) is also unmanaged code.

For example, refer to the case of System.AccessViolationException, the unmanaged code which the article refers to is actually ADODB (ActiveX® Data Objects For Database).