嵩明在旧石器时代即有人居住。西汉元封二年(公元前109年),设置牧靡县,管辖今嵩明、寻甸两地,隶属益州郡。
唐朝南诏前期,嵩明、寻甸两地分别置部,嵩明地带称崧盟部。
元至正年间改“崧盟”为“嵩明”。
明洪武十五年(1382)设嵩盟州,1914年始称嵩明县。
中华人民共和国成立后,设嵩明县,属曲靖专区。
1958年,10月,嵩明、寻甸两县合并,称嵩明县。
1959年6月,改称寻甸县。
1961年7月,嵩明、寻甸分县,恢复嵩明县建制,仍属曲靖专区。
1983年10月,划归昆明市管辖。
2000年,嵩明县辖3个镇、6个乡:嵩阳镇、杨林镇、小街镇、杨桥乡、四营乡、小新街乡、白邑乡、阿子营乡、大哨乡。
2001年,全县辖3个镇、6个乡:嵩阳镇、杨林镇、小街镇、杨桥乡、四营乡、小新街乡、阿子营乡、白邑
乡、大哨乡。
2006年,撤销大哨乡和白邑乡,设立滇源镇,新设立的滇源镇管辖原大哨乡和白邑乡管辖的行政区域范围,镇政府驻原白邑乡政府驻地;撤销小新街乡和四营乡,设立牛栏江镇,新设立的牛栏江镇管辖原小新街乡和四营乡管辖的行政区域范围,镇政府驻原四营乡政府驻地。
2009年,滇源镇、阿子营镇由盘龙区托管,辖4镇75个村委会,446个自然村。
2011年嵩阳镇改为嵩阳街道办事处。驻地不变,行政区域不变。