Специальные значения HWND_TOP и HWND_TOPMOST имеют похожие имена, но делают совершенно разные вещи, когда их передают в параметре
hWndInsertAfter функции DeferWindowPos (или её аналога, к примеру, SetWindowPos). Для начала вам следует почитать обсуждение в MSDN, которое достаточно точно. Здесь я хочу обсудить это различие с точки зрения исторической перспективы в надежде, что взгляд с другой перспективы может улучшить ваше понимание.