“巧家”系初開辟巧家的彝族頭領“曲古都家”的簡稱“曲家”而來。一說因巧家汛而得名。西漢建元六年(前135)置堂瑯縣,屬犍為郡;武帝置三降縣,屬越嶲郡。東漢置堂狼縣,屬犍為屬國都尉。三國蜀漢為堂瑯縣,屬益州朱提郡。西晉至南朝梁為寧州堂狼縣地。北朝周屬南寧州。隋開皇年間屬南寧州總管府;大業(yè)年間為東爨地。唐初置唐興縣,唐南詔屬拓東節(jié)度轄地。宋大理國為東川郡烏蒙悶畔部地。
元為東川路轄地。元憲宗年間置悶畔萬戶,至元十五年(1278)置東川軍民府,二十八年(1291)升東川路。至元十一年(1274)置鄧州、川州、趙州、姚州。至元二十一年(1284)置烏撒烏蒙軍民宣撫司,至元二十四年(1287)改置烏撒烏蒙宣慰司管軍萬戶府,東川路均屬之。至元二十八年(1291),以上鄧、川、趙姚4州省入東川路。大德四年(1300)置淄都縣、烏撒縣,后省。明為東川府轄地。洪武十五年(1382),東川路改置東川府,屬云南布政司,洪武十七年(1384)改置東川軍民府,改屬四川布政司;洪武二十一年(1388)廢,洪武二十六年(1393)復置東川軍民府,尋自府西南馬鞍山徙治萬額山南。
清初沿明制,為東川軍民府,屬四川省。雍正四年(1726)4月,四川省屬之東川軍民府劃歸云南省,改置為東川府。雍正五年(1727)7月,于巧家汛地置會澤縣,屬東川府。雍正七年(1729)4月,徙會澤縣治于府城。雍正八年(1730)7月,東川府屬迤東道(治曲靖府)。嘉慶十六年(1811)3月,于原會澤縣舊址置巧家撫彝府同知(后改設巧家廳),屬東川府。民國2年(1913),巧家廳改為巧家縣,屬滇中道。民國18年(1929),裁道直屬省。民國31年(1942),屬第一行政督察區(qū)(駐昭通縣)。1950年,巧家縣屬昭通專區(qū)。1970年,昭通專區(qū)改為昭通地區(qū),巧家縣屬昭通地區(qū)。2001年8月,昭通撤地設市,巧家縣屬昭通市。
1951年12月8日,內(nèi)務部【內(nèi)民字第219號】函復:云南省巧家縣第二區(qū)(淌塘區(qū))金沙江左岸上段的虐姑、新山、松坪、老口、黃坪、鐵廠、淌塘7個鄉(xiāng)和云河鄉(xiāng)的兩個村劃歸西康省會理縣。上述地方共計52個自然村,9111戶,45377人,總面積628平方千米。巧家縣第一區(qū)的大同鄉(xiāng)、景興鄉(xiāng)和騎騾溝自治區(qū)劃歸西康省寧南縣。上述地方共計6個自然村,1326戶,5820人,總面積565平方千米(1951年11月24日,西南軍政委員會批準)。
1996年,巧家縣轄1個鎮(zhèn)、18個鄉(xiāng):新華鎮(zhèn)、紅山鄉(xiāng)、東坪鄉(xiāng)、茂租鄉(xiāng)、大寨鄉(xiāng)、小河鄉(xiāng)、六合鄉(xiāng)、新店鄉(xiāng)、巧家營鄉(xiāng)、蕎麥地鄉(xiāng)、包谷垴鄉(xiāng)、老店鄉(xiāng)、鉛廠鄉(xiāng)、中寨鄉(xiāng)、崇溪鄉(xiāng)、金塘鄉(xiāng)、馬樹鄉(xiāng)、爐房鄉(xiāng)、蒙姑鄉(xiāng)。縣府駐新華鎮(zhèn)。
2000年第五次人口普查,巧家縣常住總人口總人口461034人,其中:新華鎮(zhèn)61314人,茂租鄉(xiāng)17188人,東坪鄉(xiāng)24765人,紅山鄉(xiāng)18539人,大寨鄉(xiāng)31208人,小河鄉(xiāng)25274人,六合鄉(xiāng)12613人,新店鄉(xiāng)22413人,巧家營鄉(xiāng)25481人,蕎麥地鄉(xiāng)39669人,苞谷垴鄉(xiāng)19840人,鉛廠鄉(xiāng)20000人,老店鄉(xiāng)25581人,中寨鄉(xiāng)11112人,崇溪鄉(xiāng)29984人,金塘鄉(xiāng)14412人,馬樹鄉(xiāng)27808人,爐房鄉(xiāng)17987人,蒙姑鄉(xiāng)15846人。
2001年,全縣轄1個鎮(zhèn)、18個鄉(xiāng):新華鎮(zhèn)、大寨鄉(xiāng)、小河鄉(xiāng)、馬樹鄉(xiāng)、茂租鄉(xiāng)、東坪鄉(xiāng)、紅山鄉(xiāng)、六合鄉(xiāng)、新店鄉(xiāng)、巧家營鄉(xiāng)、蕎麥地鄉(xiāng)、包谷垴鄉(xiāng)、鉛廠鄉(xiāng)、老店鄉(xiāng)、中寨鄉(xiāng)、崇溪鄉(xiāng)、金塘鄉(xiāng)、爐房鄉(xiāng)、蒙姑鄉(xiāng)。
2002年,小河鄉(xiāng)、蕎麥地鄉(xiāng)撤鄉(xiāng)設鎮(zhèn)(省政府2002年8月20日批準);馬樹鄉(xiāng)、大寨鄉(xiāng)撤鄉(xiāng)設鎮(zhèn)(省政府2002年9月8日批準)。2002年末,巧家縣總人口12.09萬戶50.8萬人,其中農(nóng)業(yè)人口11.2萬戶47.20萬人。轄19個鄉(xiāng)鎮(zhèn)、180個村委會。
2003年,蕎麥地鎮(zhèn)更名為藥山鎮(zhèn)(省政府2003年3月20日批準)。2006年,撤銷巧家營鄉(xiāng)和新華鎮(zhèn),設立白鶴灘鎮(zhèn),新設立的白鶴灘鎮(zhèn)管轄原巧家營鄉(xiāng)和新華鎮(zhèn)管轄的行政區(qū)域范圍,鎮(zhèn)政府駐原新華鎮(zhèn)政府駐地;撤銷鋁廠鄉(xiāng)和老店鄉(xiāng),設立老店鎮(zhèn),新設立的老店鎮(zhèn)管轄原老店鄉(xiāng)和鉛廠鄉(xiāng)管轄的行政區(qū)域范圍,鎮(zhèn)政府駐原老店鄉(xiāng)政府駐地;撤銷六合鄉(xiāng),其所轄六合、壩統(tǒng)、木廠、馬店4個村委會劃歸小河鎮(zhèn)管轄,所轄水井、碉樓2個村委會劃歸新店鄉(xiāng)管轄(省政府2006年1月20日批準)。
2006年,巧家縣總人口51.13萬人。轄6個鎮(zhèn)、10個鄉(xiāng):白鶴灘鎮(zhèn)、大寨鎮(zhèn)、小河鎮(zhèn)、藥山鎮(zhèn)、馬樹鎮(zhèn)、老店鎮(zhèn)、茂租鄉(xiāng)、東坪鄉(xiāng)、紅山鄉(xiāng)、新店鄉(xiāng)、苞谷垴鄉(xiāng)、中寨鄉(xiāng)、崇溪鄉(xiāng)、金塘鄉(xiāng)、爐房鄉(xiāng)、蒙姑鄉(xiāng)。共有4個居委會、179個行政村。縣政府駐白鶴灘鎮(zhèn)。
2010年第六次人口普查,巧家縣常住總人口516349人,其中:白鶴灘鎮(zhèn)101175人,大寨鎮(zhèn)33866人,小河鎮(zhèn)40240人,藥山鎮(zhèn)43231人,馬樹鎮(zhèn)32220人,老店鎮(zhèn)53576人,茂租鄉(xiāng)18029人,東坪鄉(xiāng)28149人,紅山鄉(xiāng)18568人,新店鄉(xiāng)29297人,包谷垴鄉(xiāng)22512人,中寨鄉(xiāng)10658人,崇溪鄉(xiāng)32998人,金塘鄉(xiāng)15065人,爐房鄉(xiāng)19353人,蒙姑鄉(xiāng)17412人。
2012年9月19日,省政府批復同意撤銷巧家縣蒙姑鄉(xiāng)、金塘鄉(xiāng)、新店鄉(xiāng)、茂租鄉(xiāng)、崇溪鄉(xiāng)、東坪鄉(xiāng),設立蒙姑鎮(zhèn)、金塘鎮(zhèn)、新店鎮(zhèn)、茂租鎮(zhèn)、崇溪鎮(zhèn)、東坪鎮(zhèn)(云政復[2012]77號)。
2014年,馬樹鎮(zhèn)、蒙姑鎮(zhèn)被列為全國重點鎮(zhèn)。