
Слово очевидным образом происходит от названия города Москвы, являясь таким образом этнохоронимом. При этом имеются несколько версий места его изначального появления и путей распространения. Фасмер указывал на южное происхождение из укр. москаль со значением «выходец из Москвы, русский (солдат)», которое в свою очередь было заимствовано из польского языка.
Известный востоковед Александр Казем-Бек не отрицал польский первоисточник, но высказывал версию о вхождении слова «москаль» в украинский опосредованно, через тюркские заимствования при контактах с Оттоманской империей. Подобно тому, как во многих европейских странах для обозначения жителей Московского государства наряду со словами лат. russi, rutheni, нем. Reussen, Russen («русские») использовали слово лат. moscovitae («московиты») по названию столицы, так же и тюрки Оттоманской империи для обозначения русских использовали слово mosqovlu.
О. В. Потапова отмечает, что на более глубоком уровне семантического анализа наблюдается антономасия: перенос названия части целого на всё целое (Москва как вся Россия). Также она предполагает эвфемизацию, сравнивая этнохоронимные образования «москаль» и «иерусалимский дворянин» (еврей).