На первом шаге выбрать платформу. В качественных программах почти всегда графический интерфейс под каждую операционку свой (если по трудоемкости разработчики могут себе такое позволить) .
Вам только для Win? И полноценную, а не Metro?
Если да, то классический современный профессиональный путь лежит через WPF (только на практике C# придется смешивать с C++/CLI)
http://stackoverflow.com/questions/4776355/does-wpf-work-with-cМеня за это заминусуют, но я посоветую выбрать Qt. Это мультиплатформенный путь, и происходит он изначально не из Windows (хотя с виндой там все в порядке) . Аргументирую тем, что с плюсами в Qt все OK (в том числе с точки зрения стиля программирования, что важно для учебных целей) , а технологии написания юзер интерфейсов все равно часто меняются, так что зацикливаться на WPF на данном этапе нет смысла.