Отвечая на вопрос: любой поток, в котором есть Message Loop может обрабатывать оконные сообщения, то есть позволяет реализовывать в нем окно (не модальный диалог). С другой стороны модальный диалог имеет цикл обработки сообщений внутри себя, посему его не видно в коде. В любом случае создание многопоточной GUI это не есть хорошо..