新中国成立前,万山原属中山县辖。
1951年1月,属广东省人民政府海岛管理局珠江分区,后改为珠江专区海岛管理处,隶属珠江专署。
1952年7月,海岛管理处移交给中山县。
1952年12月,属中山县渔民区辖。
1953年5月1日,属珠海县第一区(唐家)管辖。
1958年底,成立公社。
并人中山县.当时包括桂山岛、。
担杆列岛、外伶仃及佳莲列岛。
1961年,属珠海县辖。
1963年,划出担杆、庙湾、外伶仃海岛成立担杆公社。
1974年,又划出桂山等岛屿成立桂山公社。
1979年,属市辖。
1984年,属香洲区辖。
1986年,撤区改镇。