西元185年(中平二年),北宮伯玉等人侵三輔地區,朝廷詔令皇甫嵩回鎮長安,保衛皇家園陵。
當初皇甫嵩征討張角時,途經鄴地,發現中常侍趙忠住宅超過了規定,便上奏皇帝予以沒收。
另外,中常侍張讓向他索要五千萬錢,他不肯給。於是趙忠和張讓聯起手來,劾奏皇甫嵩連戰無功,耗費錢糧。
靈帝聽信讒言,召回皇甫嵩,收回他的左車騎將軍印綬,削奪封戶六千。改封都鄉侯,食邑二千戶。
西元188年(中平五年)十一月,涼州人王國包圍陳倉(今陝西寶雞東),在此用人之際,漢靈帝又任命皇甫嵩為左將軍,督領前將軍董卓,各率兩萬士兵拒敵。
董卓提出迅速進赴陳倉,他說:「聰明人不失時機,勇敢的人不遲疑。現在救,城就可以保全;不救,城就會破滅。保全或破滅的形勢就在此時。」
皇甫嵩卻說:「不對。百戰百勝,不如不戰而屈人之兵。所以先要作出不可獲勝的樣子,用來等待可以戰勝敵人的時候。不可勝在我,可勝在敵人。
敵人防不勝防,而我郡軍進攻則非常主動,想打哪裡就打哪裡。有餘的,好像動於九天之上,不足的,好像陷入九地之下。
現在陳倉雖然小,但守城的工事堅固完備,不是九地之坑陷,王國軍隊雖然強,但進攻我所不救的,不是九天之上的形勢。
沒有九天之上的形勢,進攻的就要受害。陷入九地之下,防守的就不會被攻破。王國現在已經陷入受害之地,陳倉可保不被攻破。我可以興兵動眾,收到全勝的功,為什麼要救呢!」
沒有采納董卓的建議。
西元189年(中平六年),王國圍攻陳倉從冬到春,已有八十多天,但由於城堅守固,最後也未能攻下,部眾都疲勞不堪,只好解圍撤退。
皇甫嵩立即起兵追擊。董卓勸阻說:「不可以,兵法上說,被擊敗的敵人,不要追趕,撤回去的部隊,不要逼迫。現在,我們追擊王國,是逼迫撤回的部隊,是追擊被打敗的敵人,被圍困的野獸,還要掙扎,蜂蠆有毒,何況這麼多人呢!」
皇甫嵩則說:「不對。以前我不進擊,是躲避他的銳氣,現在進擊,是等到敵人衰弱的時候。
我們進擊的是疲敝的敵人,不是撤回去的部隊。王國的部隊,準備逃走,沒有鬥志。用堂堂之陣,進擊潰亂之師,這不是叫做追窮寇。」
說完,便獨自率兵追擊,而命董卓殿後。皇甫嵩連戰連捷,大破王國的部眾,斬殺一萬多人。董卓又慚愧又遺憾,愈加忌恨皇甫嵩。
西元189年(中平六年),靈帝病重,任命董卓為幷州牧,讓他把部隊交給皇甫嵩統領。
董卓不肯奉命。皇甫嵩的侄兒皇甫酈認為董卓逆命懷奸,罪在不赦,力勸皇甫嵩興兵討伐。
皇甫嵩說:「董卓不聽命雖然有罪,但我專誅也是有責的。不如正大光明地上奏,讓朝廷處理此事。」於是將此事上奏,朝廷責備董卓,董卓對皇甫嵩更增怨恨。
西元190年(初平元年),董卓為防後院起火,徵京兆尹蓋勳為議郎,皇甫嵩當時統兵三萬駐紮在扶風郡,蓋勳秘密與皇甫嵩商議討伐董卓。