先秦屬古滇國地。漢武帝元封二年(前109)屬益州郡地;西漢元封五年(前106),屬益州郡俞元縣地。三國蜀漢建興三年(225),屬益州建寧郡俞元縣地。西晉武帝泰始七年(271),屬寧州建寧郡俞元縣地。永嘉二年(308)屬晉寧郡俞元縣地。沿襲至南朝梁。北朝周屬南寧州。隋時置南寧州總管府西爨地。唐初屬劍南道姚州;肅宗上元元年(760),南詔(國)以澄江為河陽郡,屬拓東節度轄地,今紅塔區為河陽郡下轄溫富州。宋大理國時屬善闡府溫富州。
元初置溫富千戶;另有原大理部傍(駐普具籠城)、普舍部(駐普札籠城)改置部傍、普舍二千戶,均屬羅伽萬戶;原大理步雄部改置百戶。至元十三年(1275),溫富千戶改置新興州,屬中路。同年置休納縣為倚郭(后并入新興州);步雄百戶改置研和縣;普舍千戶改置普舍縣,治普札龍城。普舍縣、研和縣均屬新興州。至元十六年(1279),新興州改屬澂江路。明為新興州,屬澂江府。洪武十三年(1382),普舍縣、研和縣并入新興州。清初沿明制,為新興州,屬澂江府。雍正八年(1730)七月,澂江府屬迤東道。民國2年(1913)4月,改新興州為新興縣,屬滇中道。民國3年(1914)1月,因新興縣與廣東肇慶的新興縣同名,改名為休納縣。民國5年(1916)11月,更名為玉溪縣。民國18年(1929),廢道直屬省。
1950年1月1日成立玉溪縣人民政府,為玉溪專區駐地。1956年,將晉寧縣后河村17.1平方千米劃歸玉溪縣。1960年9月13日,國務院全體會議第103次會議通過:撤銷江川縣,將原江川縣的行政區域并歸玉溪縣(1958年10月1日撤并)。1962年3月27日,國務院全體會議第115次會議決定:恢復江川縣,以合并于玉溪縣的原江川縣行政區域為江川縣的行政區域(1961年11月分置)。1964年10月6日及1966年,先后將時屬晉寧縣雙河公社的老鸛箐、法寨兩個村共34.2平方千米劃入玉溪縣。1970年玉溪專區改為玉溪地區,玉溪縣為地區駐地。
1983年9月9日,國務院【國函字189號】批復:撤銷玉溪縣,設立玉溪市(縣級)。以玉溪縣的行政區域為玉溪市的行政區域。1984年,玉溪市(縣級)轄9區和1辦事處,共設69鄉3鎮4個居委會和1個農委會。1996年,玉溪市(縣級)轄7個鎮、2個民族鄉:州城鎮、北城鎮、春和鎮、李棋鎮、大營街鎮、研和鎮、高倉鎮、小石橋彝族鄉、洛河彝族鄉。市政府駐州城鎮。
1997年12月13日,國務院批準(國函[1997]108號):(1)撤銷玉溪地區和縣級玉溪市,設立地級玉溪市。(2)玉溪市設立紅塔區,以原玉溪市的行政區域為紅塔區的行政區域。區人民政府駐紅塔路。1998年3月15日正式撤市設區。1998年10月9日,云政復[1998]85號:撤銷紅塔區州城鎮,設立玉興路、鳳凰路、彩虹路3個街道辦事處。
2000年第五次人口普查,紅塔區常住總人口409044人,其中:玉興路街道61286人,鳳凰路街道57956人,玉帶路街道34322人,北城鎮56135人,春和鎮50762人,李棋鎮27967人,大營街鎮43944人,研和鎮41539人,高倉鎮19517人,小石橋彝族鄉5849人,洛河彝族鄉9767人。
2000年末,紅塔區轄玉興路、玉帶路、鳳凰路3個街道辦事處和北城、大營街、研和、李棋、春和、高倉6個鎮及洛河、小石橋2個鄉;12個居委會、64個村委會。全區總人口37.7萬人;其中,農業人口25.8萬人,非農業人口11.9萬人;少數民族人口為4.98萬人,占總人口的13.2%;人口密度375人/平方千米。
2002年末,全區總人口387847人。其中,農業人口:261212人,非農業人口126635人。有漢、彝、回、白、哈尼、傣、壯等30種民族。少數民族人口為51535人,占總人口的13.3%。人口密度386人/平方千米。轄3個街道、6個鎮、2個民族鄉:玉興路街道、玉帶路街道、鳳凰路街道、北城鎮、李棋鎮、大營街鎮、研和鎮、春和鎮、高倉鎮、小石橋彝族鄉、洛河彝族鄉。
2003年末,紅塔區總人口39.33萬人;其中農業人口26.33萬人,非農業人口13.0萬人;少數民族人口5.29萬人,占總人口的13.4%;人口密度392人/平方千米。全區轄玉興路、玉帶路、鳳凰路3個街道辦事處和北城、大營街、研和、李棋、春和、高倉6個鎮及洛河、小石橋2個鄉,17個居委會(其中15個社區居委會),220個居民小組,63個村委會,1個農村辦事處,442個自然村。
2010年第六次人口普查,紅塔區常住總人口495129人,其中:玉興路街道75619人,鳳凰路街道76155人,玉帶路街道52736人,北城鎮59440人,春和鎮59653人,李棋鎮36783人,大營街鎮49339人,研和鎮47959人,高倉鎮21970人,小石橋鄉5577人,洛河鄉9898人。
2011年,紅塔區撤銷北城、春和、研和、大營街、李棋、高倉等6個鎮,設立北城、春和、研和、大營街、李棋、高倉等6個街道。調整后,全區轄9個街道、2個民族鄉:玉興路街道、鳳凰路街道、玉帶路街道、北城街道、春和街道、李棋街道、大營街街道、研和街道、高倉街道、小石橋彝族鄉、洛河彝族鄉。