春秋时期为“齐东境上邑”琅琊邑治所。战国初为越国都。秦代为琅琊郡、县治所。汉代为琅琊县治所。隋代为丰泉县、琅琊县治所。唐、宋、金、元,境域属诸城县。明代在此设立兵寨,称夏河寨备御千户所,隶属灵山卫。雍正十二年(1734年),裁撤灵山卫,镇域归诸城。
1945年属藏马县琅琊区,1956年藏马县并入胶南县仍称琅琊区,后改称夏河城区,1958改乡、公社,1984年改琅琊乡,1986年设镇。
1997年,面积82平方千米,海岸线长45千米,人口3.8万,镇府驻夏河城,辖夏河城北、夏河城东、夏河城前、夏河城西、前羊栏沟、翟家屯、刘家屯、逄家屯、北山、山樊家、黄道山、岳宅、五龙沟、长阡地、周家河、甸王家、砚台地、刘前、刘北、安子营后、小东岭、库山沟、北皂户、窝龙村、西桥子、东桥子、东港头、瓮沟、西港头、毕家村、大南庄、营前、大皂户、东皂户、夏家村、丁石洼、王家洼、陈家台后、王家台后、陈家贡、蒲湾、刘家崖下、湖崖、朱家村、东杨家洼、北桃园、前桃园、台西头、台东头、西杨家洼、石家村、胡家山、斋堂岛、中桃园、滩头、尹家山、季家岭、吴家村59个行政村。2001年,原寨里镇5个村并入琅琊镇;同年,将琅琊镇部分村庄和原寨里镇的部分村庄划归琅琊台旅游度假区管理。2004年底,琅琊镇面积82平方千米,辖59个行政村,人口3.6万人;琅琊台省级旅游度假区面积9.8平方千米,人口3897人,辖车轮山前、丁官庄、东桥子、周家河、东港头、陈家台后、王家台后7个行政村。