上馆镇,隶属于山西省忻州市代县,地处
代县中部,东与
阳明堡镇毗邻,南与
峪口乡、
新高乡隔河相望,西与磨坊乡接壤,北与
雁门关乡相邻,为代县人民政府驻地所在地,
区域总面积86.41平方千米。
1949年,上馆镇境域属代县第二区;2002年,由城关镇更名为上馆镇。
截至2018年末,上馆镇户籍人口为53469人。
截至2020年6月,上馆镇下辖29个行政村,
镇人民政府驻西南街。
2018年,上馆镇有工业企业70个,其中规模以上4个,有营业面积超过50平方米以上的综合商店或超市122个。