共通型システム
各プログラミング言語はそれぞれ独自のデータ型を組み込む傾向がある。たとえば文字列を表す型として、Visual Basicは組み込みのString型を用意しているが、内部的にCOMのBSTR構造体を使っている。C/C++ではchar型の配列もしくはwchar_t型の配列を文字列とみなす。STLではstd::stringおよびstd::wstringクラスを、ATL/MFCではATL::CString (ATL::CStringA/ATL::CStringW) クラスを提供する。また、C/C++ (Visual C++) のint型はWin16環境では16ビット、Win32/Win64環境では32ビットだが、Visual BasicのInteger型は16ビットである。これらのデータ型は、言語間での互換性がない。
.NET Frameworkの目標の1つはアプリケーション開発を容易にすることである。.