西汉时期,县境属益州郡刺史部哀牢国。
东汉永平十二年,置永昌郡后属永昌郡。
三国时期,属永昌郡之永寿,今耿马、不韦,今保山,两县分辖;南北朝时属永昌府。
隋代属南宁州总管府之濮部等部;唐初属剑南道金齿部。
南诏时,属永昌节度唐封川,今凤庆辖地。
五代十国时,属大理国永昌府。
宋代县境大部属大理国永昌府广邑州。
元代属大理金齿宣慰司领地,分辖于顺宁府庆甸县、镇康路湾甸州和大理路永昌府。
明初分属于永昌府和顺宁府,明万历十三年,设右甸土守御所,二十六年置右甸通判,三十年筑右甸城,设守御土千户,隶顺宁府。
清初沿袭明代治制,乾隆十一年,设右甸经历厅署。
民国元年至22年9月先后设“顺宁县右甸县佐公署”、“顺宁县第四区”,县境分属保山、顺宁两县。
1919年(民国8年),设顺宁县右甸分县。
1933年10月(民国22年),经云南省国民政府批准,由保山,旧为永昌府、顺宁,今凤庆县,两县相邻的部分区乡析置设县,取“永昌”、“顺宁”两府名称之第二字,谓之“昌宁”,既有划地组合之由,又有昌盛安宁之意。
1950年1月25日,昌宁和平解放,隶属云南省保山地区行政专员公署。
1956年,保山地区并入德宏州,昌宁相应改隶德宏州。
1963年,保山地区恢复成立,昌宁复隶保山地区。
2000年12月保山撤地设市,昌宁隶属保山市至今。
1997年,昌宁县面积3888平方千米,人口32万人。辖2个镇、12个乡。县政府驻右甸镇。
2005年,昌宁县撤销达丙镇和右甸镇,合并设立田园镇,昌宁县镇政府驻县城关庙社区。