個人的見解です。
今後は(Windows上では) .NETが主流になると考えます。
使いやすいGUIコンポーネント
LINQ等の(プログラマに優しい)革新的技術
...
これらの一部はMFCにも採用される(リボン等)と思いますが、
全部は無理でしょう。
一般的なWindowsアプリは徐々に.NET化すると考えます。
ではMFCの出番はないのか?
あります。
過去の膨大な資産があります。
これはとても有利な点です。
新規プロジェクトはどうか?
MFCは”ネィティブ"アプリであることが特徴です。
微妙なタイミング調整とかを必要とする機器制御の分野などは
.NETよりも向いていると考えます。
ただし、そういう分野でも、"派手な"GUIが好まれる傾向があります。
”機器制御"という本質からは、どうでもいいことなのですが、
”リスト・コントロールでさぁ、条件を満たした項目だけ、
前景色・背景色を変えて目立つようにしてくれるとうれしいなぁ"
なんて声はよく聞きます。
.NETならどうってことないですが
MFCだと大変です。
しかし、いくつもつながった機器を常時モニターして
変化を見逃さず、素早く制御する
なんて場面では,
ネィティブが使いたくなるのではないでしょうか?
そこで、”ハイブリッド"もあり得るというか
むしろ”ハイブリッド化"が進むのではと考えるのです。
細かい機器制御は(MFCなどを使って)ネィティブで開発し、
GUI周りは.NETで美しく表示を行う。
こんなものもありだと思いますし、
増えるのではないでしょうか?
補足
ものすごく素晴らしい解説で、本当に分かりやすいです。ありがとうございます。 .NETでのGUI開発は、C++よりもC#が超楽だとか聞いたのですが、どうなんでしょうか? GUIはC#で、本体はC+++MFCで、というふうになるんでしょうか?