古镇始建于明代天启年间,以道观“上元观”而得名。
1950年设上元观乡,1958年为管理区,1961年建公社,1966年更名汉江公社,1972年复称上元观公社,1983年复改乡,1985年设镇。1996年,鲜家庙乡、南坎营乡并入上元观镇,面积40.2平方千米,人口3.6万人,辖乐城、外北街、曹河坝、范家营、鸭儿池、包家营、龚家堡、张家庵、鲜家庙、李家坎、谢家营、四合、宁家湾、三合、昝家庄、嵩山寺、口头营、张家营、三刘村、强南坎、韩家营、李家咀、王家堡、向日寺、乐丰25个行政村。