旧州镇历史悠久。秦汉时期旧州属于百越地、象郡地。三国时期为吴国辖地,属于合浦郡。南朝时期,先后属越州、交州、安州。
隋开皇十八年(598年)设南宾县,县治设于南宾寨,今旧州镇政府对面古城中学旁,这是灵山县最早建制。直到唐贞观十年(636年),南宾县县治移至峰子岭南(今三海镇棠梨村境内),旧州成为县治38年。
唐贞观十年(636年),钦州州治从钦江县迁至南宾寨,直到宋天圣元年(公元1023年)迁往安远县(今钦州镇),旧州成为州治387年。故旧州有“古城”之称,此亦为旧州镇得名之由来。
五代、宋、元、明、清、民国至今一直属于灵山县。
嘉庆至民国15年,称灵山县旧州练。
解放初称灵山县第六区。
1958年12月7日称旧州公社。
1984年8月称旧州乡。
1994年11月称旧州镇。
至2015年1月,辖双凤、狮岭、双金、长基、六额、塘寮、旧州、民主、樟木、六华、古修、张高、大岭、西屯、青松、石桥、石柱、上耕、下浪、北龙、围屋、兵马、上井、教马、长安、那良、沉木、新湾、横塘29个村委员会和古城社区居委会;有636个自然村,445个村民小组。