隋代初,屬南巴縣地。
隋大業(yè)年間,隨縣并入連江縣,唐武德年間,復(fù)為南巴縣。
宋開(kāi)寶五年(972年),隨縣省并入電白縣。
清代,為沙瑯巡檢司所轄。
民國(guó)三十年(1941年),為第三區(qū)所轄。
1950年,為電白縣第四區(qū)所轄。
1953年3月,屬第九區(qū)。
1957年2月,建立羊角鄉(xiāng)。
1959年,建立羊角人民公社。
1983年12月,撤公社置羊角區(qū)。
1987年1月,撤區(qū)設(shè)羊角鎮(zhèn)。
2001年1月22日,經(jīng)國(guó)務(wù)院批準(zhǔn),從電白縣中劃出南海鎮(zhèn)等6個(gè)鎮(zhèn)設(shè)立茂名市茂港區(qū),羊角鎮(zhèn)隸之。
2014年4月,電白縣與茂港區(qū)合并設(shè)立電白區(qū),羊角鎮(zhèn)隸之。
2017年9月28日,經(jīng)廣東省人民政府批準(zhǔn),羊角鎮(zhèn)劃歸茂名市茂南區(qū)。