春秋、戰國時期為吳、越、楚之屬地,漢為南城縣地,隸屬豫章郡。三國吳太平二年(257年)析南城縣南部置豐縣,屬臨川郡。因縣境內常產一莖多穗之稻,故初名豐縣,別號嘉禾。又以徐州有豐縣,故名南豐縣。宋屬建昌軍。南宋紹興八年(1138)劃出南豐南境三鄉置廣昌縣。元至元十九年(1282)升為南豐州。明洪武三年(1370)復為縣,隸建昌府。
1931~1934年,南豐縣大部分地域為革命根據地,建立過縣蘇維埃政權,屬江西省蘇維埃政府管轄。中華人民共和國成立前夕,隸屬江西省第七行政區。1949年8月17日,南豐解放。先后屬撫州專區、撫州地區(1970年)、撫州市(2000年)。
1979年,設立洽村、朱坊公社(贛革發[1979]146號)。1985年3月15日,撤銷太和鄉,設置太和鎮(贛府廳字[1985]160號)。
1984年4月15日,南豐縣撤銷白舍公社,設立白舍鎮和波羅鄉。白舍鎮管轄白舍、楓江、瑤陂、舍頭、茶亭、望天、三坑、下陂、池渡、張家、上甘、下甘等12個大隊;波羅鄉轄羅坊、鄱陽、陳坊、田東、方坑、珠湖、羅家、小石、磜民等9個大隊(贛府字[1984]84號)。
2000年,全縣面積1909平方千米,人口25.2萬。轄3個鎮、14個鄉:琴城鎮、太和鎮、白舍鎮、東坪鄉、洽灣鄉、沙崗鄉、市山鄉、橋背鄉、萊溪鄉、太源鄉、三溪鄉、桑田鄉、西溪鄉、波羅鄉、中和鄉、洽村鄉、傅坊鄉。縣政府駐琴城鎮。
2000年第五次人口普查,全縣總人口260738人,其中:琴城鎮50163人、太和鎮21196人、白舍鎮15077人、橋背鄉24790人、市山鄉25681人、沙崗鄉5516人、三溪鄉9055人、洽灣鄉15012人、東坪鄉7121人、萊溪鄉16071人、桑田鄉13699人、太源鄉9104人、付坊鄉14581人、中和鄉10757人、波羅鄉7994人、洽村鄉7938人、西溪鄉6983人。
2001年3月2日,撤銷洽灣鄉、桑田鄉,設立洽清鎮、桑田鎮(贛民字[2001]94號批復)。2001年11月8日,撤銷橋背鄉,劃歸琴城鎮;撤銷沙崗鄉、市山鄉,合并組建市山鎮;撤銷西溪鄉、洽村鄉,合并組建紫霄鎮,鎮政府駐洽村;撤銷中和鄉、波羅鄉,劃歸白舍鎮(贛民字[2001]509號批復)。
2002年底,南豐縣面積1909平方千米,人口27.9萬人,其中非農業人口4.7萬人。轄7個鎮、5個鄉,7個居委會、176個行政村。縣政府駐琴城鎮。
2003年底,全縣總人口27.2萬人,轄7鎮5鄉。