北周天和元年(566年),于此筑斜城,亦名云川城。
唐初郇州治,武德三年(620年),為眉縣縣治,亦名首善城,后歷為縣治。
明為斜城社。
清改名全善里。
民國二年(1913年),復(fù)名首善城,為眉縣縣治。
1949年5月,為郿縣第五區(qū),轄6鄉(xiāng)。
1956年2月,設(shè)首善鄉(xiāng),轄12個(gè)村。
1958年9月,改為紅旗公社首善管理區(qū),同年12月,并入周至縣,設(shè)首善公社。
1961年9月,改沒城關(guān)公社,轄12個(gè)生產(chǎn)大隊(duì)。
1984年4月,政社分設(shè),改為城關(guān)鎮(zhèn),轄12個(gè)行政村。
2002年1月,第五村鄉(xiāng)與城關(guān)鎮(zhèn)合并改稱首善鎮(zhèn),轄24個(gè)行政村。