公元184年(光和七年),因叛徒唐周告密,張角星夜傳檄四方,發動起義,史稱「黃巾之亂」。黃巾義軍所到之處,燔燒官府,劫略鄉邑,一時,州郡失守,長吏逃亡,天下響應,京師為之震動。
東漢朝廷惶恐不安,馬上採取鎮壓措施,首先,漢靈帝命各州郡在雒陽外圍的八個關隘——函谷、太谷、廣成、伊闕、轘轅、旋門、孟津、小平津設定都尉,佈防護衛;接著,任命何進為大將軍,率左、右羽林軍屯駐都亭。
朝廷還採納了皇甫嵩和中常侍呂強的建議,解除黨禁,赦免天下黨人,拿出中藏錢和西園廄馬賜給將士;另外,漢靈帝起用盧植為北中郎將,皇甫嵩為左中郎將、朱儁為右中郎將,各持節,調發全國精兵分擊黃巾義軍。
皇甫嵩與朱儁調發五校(北軍五校,為中央主要常備軍,即屯騎、越騎、步兵、長水、射聲五校尉所將宿衛兵)三河(河東、河內、河南)騎兵,同時招募精壯之士,共計四萬多人。二人各率一部,共同鎮壓潁川(郡治陽翟,今河南禹縣)起義軍。
朱儁先與黃巾軍波才部作戰,失敗。皇甫嵩退守長社(今河南省長葛縣東北)。波才率大兵包圍城。當時,城中兵少,眾寡懸殊,軍中震恐。
皇甫嵩安慰部下,他說:「用兵有奇變,而不在兵數量多少。現在賊人依草結營,容易因風起火。如果乘黑夜放火焚燒,他們一定驚恐散亂,我出兵攻擊,四面合圍,田單守即墨用火牛攻燕而獲勝的功勞就可以實現。」
天遂人願,當晚大風驟起。皇甫嵩命令將士紮好火把登上城牆,先派精銳潛出圍外,縱火大呼,然後城上點燃火把,與之呼應。
皇甫嵩藉此聲勢,鳴鼓衝出。黃巾義軍缺乏戰鬥經驗,驚慌散亂,被迫後撤。這時,騎都尉曹操也奉命趕來,於是皇甫嵩、曹操、朱儁合兵,乘勝追擊。黃巾義軍頑強抵抗,數萬人慘遭屠戮。皇甫嵩則被封為都鄉侯。
接著,皇甫嵩又和朱儁一起乘勝鎮壓汝南、陳國地區的黃巾軍,並追擊波才、進攻彭脫,連連取勝,平定了三郡之地。
八月,皇甫嵩在蒼亭擊敗黃巾卜已部,擒獲卜已,屠殺七千多人。
這時,張角佔據廣宗,控制河北腹地,盧植為宦官所誣,被召回,繼任的董卓被擊敗。於是朝廷下詔命皇甫嵩率兵進擊。
在這緊要關頭,張角病死,張梁擔起守衛廣宗的重任。皇甫嵩攻城,因張梁兵精,未能得逞,便閉營休士,以觀其變。等到張梁被迷惑,放鬆了警惕。
皇甫嵩立即乘夜調兵,雞鳴時分沖入其陣,黃巾軍倉促應戰,張梁戰死,陣亡三萬多人,投河而死的有五萬多人。皇甫嵩焚燒黃巾輜重車三萬多輛,將張角「剖棺戳屍,傳首京師。
十一月,皇甫嵩與鉅鹿太守馮翊,攻克下曲陽(今河北晉縣西北),殺死張寶,斬殺俘虜十餘萬人,皇甫嵩將十萬人的屍骨築成了「京觀」。漢廷任皇甫嵩為左車騎將軍,領冀州牧,並晉封他為槐裡侯,食槐裡、美陽兩縣的租稅,食邑共八千戶。
平定黃巾主力之後,皇甫嵩奏請免除冀州一年田租,用來贍養饑民,漢靈帝聽從他的建議。
史載百姓作歌說:「天下大亂兮市為墟,母不保子兮妻失夫,賴得皇甫兮復安居。」
皇甫嵩鎮壓黃巾,威震天下,但當時朝政日非,海內空虛。漢陽人閻忠勸他把握機會,南面稱制。皇甫嵩不用其計。
同年,湟中(今甘肅湟原)胡人北宮伯玉和先零羌起事,共擁邊章、韓遂為帥,攻殺護羌校尉泠徵、金城太守陳懿。
公元185年(中平二年),北宮伯玉等人侵三輔地區,朝廷詔令皇甫嵩回鎮長安,保衛皇家園陵。
當初皇甫嵩徵討張角時,途經鄴地,發現中常侍趙忠住宅超過了規定,便上奏