Что касается программирования на Win32 (я имею в виду разработку программного обеспечения, использующего функции Win32API), вам нужны два типа знаний: во-первых, API-функции, используемые для создания GUI (формы, кнопки, выпадающие списки и т. Д.) И, во-вторых, API-функция, которая обеспечивает интеграцию с Win32 Shell (например, COM-объекты, используемые для создания собственных элементов в контекстных меню) и которая используется для получения доступа к ресурсам Windows.
Я думаю, если нет необходимости узнавать о первом типе вызовов API. Просто знать об их существующем и общем рабочем механизме достаточно. Вы можете использовать любую существующую инфраструктуру пользовательского интерфейса для создания собственного графического интерфейса вашего приложения (Qt, GTK +, WindowsForms, MFC - все приветствуется (но последний действительно ужасен). Поэтому вам нужно беспокоиться о вызовах API второго типа для позволить вашей программе выполнять более глубокое взаимодействие с самой ОС.