宋皇祐五年(1053年)置凭祥峒,从此才有凭祥之名,属邕州都督府左江道永平寨;元属思明路。明太祖洪武十八年(1385年)改为凭祥镇,属太平府。成祖永乐二年(1404年)改为凭祥土县,属思明府,宪宗成化十八年(1482年)升为凭祥土州,直隶广西布政司。清光绪二十八年(1902年),凭祥改为弹压,归明江厅兼理,宣统二年(1910年)改土归流升设凭祥厅,兼弹压下石土州,属太平府。
民国元年(1912年)1月,依照广西军政府厘定的《广西地方官暂行章程》规定,撤厅改为县,凭祥厅改为凭祥县。16年12月,下石西土州改流并入凭祥县。19年9月,广西省始建民团制度,凭祥属龙州民团区管辖。21年5月1日,广西省政府委员会通过凭祥为三等县。22年3月,按照广西省政府第81次委员会通过的各县等级标准,凭祥县降为五等县。25年2月26日,广西省政府委会第209次会议通过的《广西各县等次表》,凭祥列为四等县。28年10月,广西省政府委员会议决议将全省一至五等县均分为甲乙两级,凭祥县为三等乙级县。38年截至中华人民共和国成立前夕止,凭祥县属第七区辖。
中华人民共和国成立后,仍称凭祥县。
1951年5月,奉广西省令凭祥、明江、宁明3个县合并置镇南县,县治宁明。
1952年7月镇南、思乐两县合并置宁明县,治所宁明。
1955年7月12日,广西省人民委员会报国务院备案,设立凭祥镇(县级),以原宁明县第一区为其行政区域。
1956年11月16日,国务院批准凭祥镇改为市,以原凭祥镇为其行政区域。
1957年12月20日,国务院第66次全体会议批准原直隶桂西僮族自治州的凭祥市归邕宁专区(后更名南宁专区)管辖。
1958年12月,广西壮族自治区人民委员会报国务院备案,撤销龙津、宁明2个县和凭祥市,合并设立睦南县,治所凭祥。
1959年5月10日,广西壮族自治区报国务院备案,撤销睦南县恢复宁明、龙津2个县。凭祥属宁明县,称睦南公社,对外仍称凭祥市,属南宁专区。
1961年5月27日,经国务院批准,凭祥从宁明县分出恢复县级市。
1966年10月16日,龙州县析出下冻公社的平而大队,划归凭祥市。
1981年1月21日,经国务院批准,宁明县夏石公社划归凭祥市。
2002年11月国务院批准凭祥市为广西壮族自治区直辖市。2003年1月自治区批准崇左市代管凭祥市。