秦始皇三十三年(前214年)屬九江郡南懋縣。漢先后屬豫章郡、廬陵郡南野縣。三國嘉禾五年(公元236年)屬南部都尉南野縣。南北朝梁大寶元年(550年)將縣地由南康郡轉屬廣東東衡州始興郡。陳太建十三年(581年)歸始興郡分置安遠郡。隋開皇十年(590年)改安遠郡為大庾縣,隸屬廣州總管府始興郡。因地處大庾嶺北麓,以嶺名縣。此為大余建縣之始。開皇十六年(596年)廢始興郡,改大庾縣為大庾鎮,復入虔州南康縣。
唐神龍元年(705年)析南康縣置大庾縣,隸屬江南西道虔州。五代梁開平四年(910年)屬百勝軍,升元元年屬昭信軍。宋淳化元年(990年)在大余縣治地置南安軍,軍轄大庾、南康、上猶3縣。元至元十四年(1277年)改南安軍為南安路總管府,至正二十五年(1365年)改南安路為南安府,府治大庾,仍領3縣。明正德十二年(1517年)析上猶縣的崇義、上堡、雁湖3里,南康縣的隆平、尚德2里及大庾縣的義安、聶都、鉛廠3里置崇義縣,南安府領4縣。
民國元年(1912年)廢府存縣,大庾縣直屬江西省。1914年屬江西省贛南道,1926年直隸于省,1932年屬第十二行政區,1935屬第四行政區。1949年8月16日,大庾解放;8月26日成立大庾縣人民政府,隸屬贛州督察專員公署。1957年5月1日,經國務院批準大庾縣改稱為大余縣,屬贛南行政公署。1999年7月,屬地級贛州市所轄。
1983年,撤銷新城鎮,改設新城鄉,將原新城公社分設南豐鄉、京州鄉、赤石鄉,設立新城區公所(贛府廳字[1983]87號)。1984年,撤銷西華鎮建制(贛府廳字[1984]274號)。
1993年9月25日,撤銷池江鄉、青龍鄉,設立池江鎮、青龍鎮(贛民字[1993]64號批復)。1993年10月5日,撤銷新城鄉,設立新城鎮(贛民字[1993]139號批復)。1993年11月17日,撤銷樟斗鄉、下壟鎮,設立樟斗鎮(贛民字[1993]166號批復);撤銷吉村鄉,設立吉村鎮(贛民字[1993]167號批復)。1997年l月14日,撤銷梅關鄉,設立梅關鎮(贛民字[1997]12號批復)。
1997,全縣面積1367.6平方千米,人口26.7萬。轄10鎮7鄉:南安鎮、樟斗鎮、新城鎮、池江鎮、青龍鎮、黃龍鎮、吉村鎮、漂塘鎮、梅關鎮、蕩坪鎮、河洞鄉、浮江鄉、內良鄉、赤石鄉、南豐鄉、京州鄉、左拔鄉。縣政府駐南安鎮。
2000年5月8日,撤銷蕩坪鎮,將洪水寨行政村劃歸浮江鄉,將蕩坪居委會、蕩坪行政村劃歸梅關鎮;撤銷漂塘鎮、左拔鄉,合并組建左拔鎮(贛民字[2000]103號批復)。至此,全縣轄9個鎮、6個鄉。
2000年第五次人口普查,全縣總人口261611人;其中:南安鎮34631人、樟斗鎮13170人、新城鎮21968人、池江鎮37350人、青龍鎮25409人、黃龍鎮16652人、梅關鎮31344人、吉村鎮15289人、左拔鎮9850人、赤石鄉8588人、南豐鄉11956人、京州鄉9432人、浮江鄉15532人、河洞鄉3658人、內良鄉6782人。
2001年3月2日,撤銷京州鄉、赤石鄉、南豐鄉,劃歸新城鎮(贛民字[2001]98號批復)。2001年5月9日,撤銷梅關鎮,劃歸南安鎮(贛民字[2001]203號批復)。
2002年底,大余縣轄8個鎮、3個鄉,9個居委會、144個行政村。2003年底,全縣總人口28.9萬人。2006年年末全縣戶籍總人口291969人,其中非農業人口87492人。