ATL is a great helper to develop COM servers, and saves lots of pains writing raw C++ COM servers from scratch. It's main purpose is not for Windows UI applications, though ATL 3.0 adds sufficient such supports. You can still write fairly sophisticated Windows applications like MS Word using pure ATL. Any framework is just wrapper around Win32 API to facilitate development. As for option "Support MFC", my suggestion is not to check it. Doing so will force you to ship MFC runtime DLL which is about 1 MB, a real pain in size critical situations like web deployment. If developing COM servers for legacy MFC applications, try MFC COM instead of ATL COM framework.