Я просто использую это:
form.TopLevel = true;
form.TopMost = true;
, который делает окно верхним уровнем (т. Е. Оно не имеет родителя и ведет себя как основная форма приложения), а затем гарантирует, что оно является верхним (т. Е. Отображается выше всех других не верхних окон). Он всегда работал как шарм.
Обратите внимание, что я делаю это перед тем, как показать окно.