Если мы говорим конкретно про Россию, то российские города - практически все географически и климатически - северные. Из крупных российских городов к хоть сколько-нибудь "несеверным" можно отнести разве что Краснодар, Сочи, Симферополь, Севастополь, Махачкалу с Дербентом и, пожалуй, такие приморские города как Калининград и Владивосток с Находкой.
Во всех прочих российских городах зима с морозами и снегом присутствует в обязательном порядке - вопрос лишь в ее продолжительности и суровости.
Получается, что по большому счету некуда уезжать (если не в вышеперечисленные регионы - а там действительно население растет, или за границу). Переезд же из условного Надыма в условную Москву или Петербург - как правило совсем не из-за того, что там "север", а здесь - "юг", а совсем по другим причинам.
А держит - то же, что и жителей центральной России - интересная работа, друзья, родственники, нормальное жилье, сложившийся образ жизни; или наоборот - финансовые сложности с переездом, необходимость заботиться о больных или престарелых родственниках и т.п. Ну и природа на севере красивая - очень многие ее искренне любят, и есть за что.