原名马荃乡,清朝以前,为古安仁县崇德乡。民国时期,辖区大部分归属狮岩乡。镇境位于余江县南端,东邻龙虎山镇,北连县城邓埠镇及洪湖乡,南与金溪县对桥乡交界,西和东乡县瑶圩乡毗连。镇政府驻地洪崖街。1949年9月,新生区政府遭土匪袭击,副区长马荃在战斗中牺牲,人民为纪念他,以他的名字命名,将二区改为“马荃区”。1958年成立人民公社,命名为马荃公社,1984年机构改革改为马荃乡,1993年5月经省政府批准同意撤乡设镇。全镇总面积106平方公里。辖11个村民委员会,2个居民委员会,果园场2个,林场、农科所各1个,107个自然村,125个村民小组。