清代海城镇属兴贤都。
民国时期废都设区,属一区,后改镇。
1949年10月11日海城解放后,成立海城镇工作委员会。
1950年4月,属一区,区府驻县警报楼。
同年6月成立海城镇,直属一区府。
1957年,原隶属城关区的名东、城北、西南、中河等乡并入海城镇。
1958年4月,撤区并大乡,同年9月撤乡建人民公社,同年12月,原城关区、关新乡、守望乡、台东乡、关东乡、赤山乡、荣山乡、联河乡、海城镇合并成立海城人民公社。
驻址海城施厝塘。
1961年6月撤销海城公社,新划出海城镇公社。
1963年又撤销海城镇公社,与联河、赤山、附城、守望等公社合并为海城公社。
1964年6月,恢复海城镇建制。
1975年2月,原莲花山公社长埔大队划给海城镇管辖。
1984年3月,部分撤区并镇,邻近海城、城东、莲花山等3个区并入海城镇,3区1镇合并后,成立海城、城东、莲花山3个管区。
1987年1月,县撤区建乡时保留海城镇建制。
1995年9月,镇政府从人民北路南段迁至广富路北侧。
2003年1月,经省政府同意,撤销莲花山镇。
2004年12月,莲花山镇划归海城镇管辖。