1949年前屬三區(qū),稱上唐鎮(zhèn),1950年后屬四區(qū),稱上唐鎮(zhèn),1958年成立上唐公社,1966年改稱上游公社,1972年仍稱上唐公社。
1984年改為鄉(xiāng)建制,并將上唐公社的棠下、姑余、坊頭三個大隊劃出,與洪門公社劃出的包坊、李敖、上烏石三個大隊合并增設為包坊鄉(xiāng)。
1985年上唐鄉(xiāng)撤鄉(xiāng)設鎮(zhèn),稱上唐鎮(zhèn)。
2001年1月,包坊鄉(xiāng)撤銷建制,將其所轄的棠下、姑余和坑頭三個村劃歸上唐鎮(zhèn),仍稱上唐鎮(zhèn)。
2001年11月,將洪門鎮(zhèn)包坊、李敖、上烏石三個大隊劃歸上唐鎮(zhèn),仍稱上唐鎮(zhèn)。