貢山縣因高黎貢山而得名。西漢時為越嵩郡邊徼地。唐南詔時屬劍川節度。宋大理時屬謀統府管轄地。元屬臨西縣,屬麗江路軍民宣撫司。明為維西康普、葉枝土千總管轄,屬麗江軍民府。清屬麗江府維西廳;乾隆年間,北段受西藏察瓦龍土千總管轄,南段為維西康普、葉枝土千總管轄;雍正元年(1723年)“改土歸流”后直屬維西廳。
民國元年(1912年)為蘭坪營盤街“殖邊總局”管轄,置菖蒲桶殖邊公署;民國二年(1913年)置菖蒲桶行政委員會;民國五年(1916年)改菖蒲桶行政委員公署,后置貢山行政區;民國七年(1918年),歸屬維西縣;1922年置菖蒲桶行政區,民國二十二年(1933年)設貢山設治局。
1949年8月25日和平解放,1950年3月11日成立貢山臨時政務委員會,同年4月8日成立貢山縣人民政府。1956年10月成立貢山獨龍族怒族自治縣。 1996年,貢山獨龍族怒族自治縣面積4506平方千米,人口約3.3萬人。轄1個鎮、4個鄉:茨開鎮、丙中洛鄉、捧當鄉、普拉底鄉、獨龍江鄉。縣政府駐茨開鎮。
2000年第五次人口普查,貢山獨龍族怒族自治縣常住總人口34746人,其中:茨開鎮12460人、丙中洛鄉6062人、捧當鄉5807人、普拉底鄉6248人、獨龍江鄉4169人。
2001年,全縣轄1個鎮、4個鄉、個民族鄉:茨開鎮、普拉底鄉、捧當鄉、丙中洛鄉、獨龍江鄉。2003年末總人口3.4622萬人,其中農業人口2.84萬人,占83.8%,獨龍(0.51萬人)、怒(0.63萬人)、傈僳(1.79萬人)、藏(0.16萬人)族為世居民族,人口3.25萬人,占總人口的95.5%。
2006年,貢山獨龍族怒族自治縣面積4506平方千米,總人口3.65萬人。轄1個鎮、4個鄉:茨開鎮、丙中洛鄉、捧當鄉、普拉底鄉、獨龍江鄉。共有1個居委會、27個行政村。
2010年第六次人口普查,貢山獨龍族怒族自治縣常住總人口37894人,其中:茨開鎮14478人,丙中洛鄉6465人,捧當鄉6085人,普拉底鄉6627人,獨龍江鄉4239人。
2012年10月30日,丙中洛鄉正式撤鄉設鎮。調整后,全縣轄2個鎮、3個鄉:茨開鎮、丙中洛鎮、捧當鄉、普拉底鄉、獨龍江鄉。
2014年,茨開鎮被列為全國重點鎮。