明清為前河哨,同治年間(1862年—1874年)設八哨訊于此,并設三街塘。
民國時期(1912年—1949年),三街塘屬前安鎮,鎮公所設在三街。
1949年5月,中共滇西工委在哨區建立游擊區,三街是八哨區政府所在地。
1950年1月,八哨區歸屬楚雄縣轄,改為哨區;10月,哨區為五、六兩區,三街屬五區。
1951年4月,五區改為六區。
1956年4月,六區改為三街區。
1959年3月,三街區改為三街公社。
1961年9月,三街公社改為三街區。
1966年10月,三街區劃出西康朗等五個大隊屬大過口公社,其余成立三街公社,并劃屬南華縣轄。
1967年,三街公社劃回楚雄縣轄。
1972年8月,三街公社又劃出樹苴等五個大隊屬樹苴公社。
1984年4月,三街公社改為三街區。
1992年,三街區改為三街鎮。