明嘉靖四十四年(1565年),蔡伯貫組織白蓮教在萬古場起兵,定都萬古場。
清前期,屬福元里。
清宣統元年(1909年),重置萬古鎮(置萬古場),析置大堡鄉、雍溪鄉。
民國元年(1912年),萬古鎮析置協和鄉、興隆鄉。
民國十九年(1930年),為第三區。
民國二十四年(1935年),為聯保區,設萬古為第三聯保區。
民國三十一年(1942年),改萬古為第二區。
1949年,改萬古為第六區。
1950年,萬古鎮屬第六區(治萬古鎮)。
1952年,劃出回龍仍設第六區。
1953年2月,改為萬古鎮。
1956年9月,萬古鎮改為萬古鄉,中心鄉并入,次年以街村為鎮。
1993年12月,撤萬古鄉設萬古鎮,高峰鄉、新石鄉、石牛鄉并入萬古鎮。