宋時曾在常寧鎮設寨(相當于縣一級的軍事建制),取名常寧寨。
因當地群眾經常在此進行農副產品交易,逐漸形成集鎮。
金收國元年(1115年)前后,改名常寧鎮。
明天啟年間(1621~1627年),在常寧境內設常寧里、強(jiàng)化里。
清順治四年(1647年)上邑屬寧化里。
清乾隆五十六年(1791年),設常寧鎮。
民國十九年(1930年),改為常寧區,民國二十七年(1938年),豆家、上邑屬常寧鎮。
民國三十八年(1949年)5月,設店子頭、上豆家鄉、上邑鄉。
1952年6月,撤銷店子頭鄉,增設北順什鄉。
1953年7月,重設店子頭鄉、撤銷北順什鄉。
1956年3月,轍區并鄉時撤銷店子頭鄉,常寧區建立袁家鄉。
1958年5月,改稱常寧鄉。
1958年10月,常寧鄉、豆家鄉、上邑鄉合并建立常寧人民公社。
1961年8月,分設為常寧、豆家、上邑人民公社。
1984年6月,機構改革時改稱常寧鄉、豆家鄉、上邑鄉,同年7月改為常寧鎮。
1998年4月,改稱豆家鎮。
2011年,撤上邑鄉并入常寧鎮。
2015年6月28日,撤銷豆家鎮,并入常寧鎮。