.NETをなるべく使いたくないが、MFCも使いたくない場合は、
C#とC++のハイブリッドにするという手もあるかもしれない。
あとは、ATL/WTLがあるが余り流行ってない気がする。

MFCは美しくは無いが、使うとメッセージハンドラを新規に作成
したい場合に、関数宣言、関数定義、メッセージマップへの追加
という3つの作業を、VisualStudioが一度にやってくれるのと、
メニューにEnable/DisableやCheckマークをつけたりするのが
Updateハンドラや、CCmdUI なるもので行えたり、WM_PAINT
のハンドラなどでも、最初から、pDC や dc を最初から使える
ような状態になっていて、BeginPaint, EndPaint を自分で
呼ぶ手間が省けたり、また、各種 Common Control をWin32直接
使うよりは楽ではある。

C#は便利ではあるが、速度面や効率面で問題が生じる事がある
らしい。