У меня большой опыт работы с WTL и MFC, и я бы больше не выбрал WTL вместо MFC. MFC не так уж плох, как только вы узнаете, какие части игнорировать (doc / view, CArchive, контейнеры, ...) MFC предоставляет вам гораздо более широкий выбор элементов управления пользовательского интерфейса, которые никогда не будут соответствовать WTL, и есть гораздо больше помощь доступна для МФЦ. С WTL вы в значительной степени одиноки (не считая списка рассылки WTL и примера кода на viksoe.dk).
При этом, если вы все равно будете выполнять тяжелую работу в DirectX, инструментарий пользовательского интерфейса не будет иметь большого значения. И MFC, и WTL подойдут для нескольких форм и диалогов; win32 - это слишком много работы без добавленной стоимости по сравнению с MFC или WTL, а Windows Forms из C ++ - лаконичный и медленный. Кроме того, Windows Forms уже устарела, по крайней мере, MFC больше не изменится:)