Microsoft Foundation Class
そのため、旧バージョンのMFCを使って開発されたDLL(MFC拡張DLL)やスタティックライブラリを、新バージョンのMFCアプリケーションでそのまま利用することは基本的に不可能(その逆もまた然り)となっており、ソースコードからの再ビルドが必要となる。なお、非MFCアプリケーションや、異なるバージョンのMFCアプリケーションから、MFCを使って実装したコードを実行する場合、MFC標準DLLもしくはATL COMサーバーのプロジェクト形式を選択し、C言語関数形式のインターフェイスやCOMインターフェイスを作成してアプリケーション側に公開する必要がある。
MFCはあくまでWindows APIのラッパークラス群およびそれらを利用したフレームワークという位置付けのため、生産性の点ではVisual BasicやVisual C#、DelphiなどのRADツールに遠く及ばない。また、C++言語の習得は比較的難しい部類に入るため、エンドユーザープログラミング(エンドユーザーコンピューティング)の観点からも敬遠されがちである。