遠在原始社會的舊石器時代,就有人類棲息于現上蒜鎮境域,從事簡單的農牧漁生產。
元朝時,屬大堡縣。
清朝時,屬晉寧河西鄉(部分)及永寧鄉。
民國十八年(1929年),改為第三、第四區,后改為鶴峰、古城、疊翠三鄉,旋又恢改為河西、永寧2鄉。
民國三十六年(1947年),又改為3鄉,不久又恢改為河西、永寧2鄉兩鄉。
1950年后,改為第二、第三、第四區。
1958年,改為上蒜公社。
1983年,改為上蒜鄉。
2009年5月,由上蒜鄉改為上蒜鎮。