北大镇,隶属于海南省万宁市,地处万宁市西北部,东与后安镇、大茂镇接壤,东南与长丰镇相邻,南与三更罗镇毗邻,西与琼海市交界,北与龙滚镇相连,东北与山根镇、和乐镇为邻。辖区东西最大距离23.6千米,南北最大距离11.7千米, 全镇行政辖区总面积共276平方公里。
1959年至1960年,属琼中县。1961年5月, 划归万宁县并成立北大公社。2002年7月,禄马苗族乡(9个村)和北大黎族苗族乡合并,设立北大镇。2018年,北大镇户籍人口57691人。截至2025年2月,北大镇辖2个社区,19个行政村,另辖2个镇农场,镇人民政府驻东兴墟。
2018年,北大镇营业面积50方米以上的综合商店或超市个数有1个。