北流历史悠久,南朝齐永明六年(488年)置北流郡,以境内圭江流向而得名。南朝梁(502—557)置北流县,为北流行政建置之始。唐武德四年(621年),以北流县、普宁县(今容县)设置铜州,贞观六年(627年)更名容州,治所在北流长达百余年。历元、明、清、民国,至今县行政建置已有1400多年历史。
1994年4月18日,北流经国务院批准撤县设市。
2000年,北流市辖23个镇:北流镇、新荣镇、民安镇、山围镇、民乐镇、西埌镇、新圩镇、大里镇、塘岸镇、清水口镇、隆盛镇、大坡外镇、六麻镇、新丰镇、沙垌镇、平政镇、扶新镇、白马镇、大伦镇、六靖镇、石窝镇、华东镇、清湾镇。
2005年,撤销华东镇,整建制并入石窝镇,石窝镇人民政府驻地不变。