在烏蘭布通之戰中,雖然清方取得了勝利,但是因為沒有生擒噶爾丹,康熙帝感到很遺憾。不過他依然在積極部署,且準備了六年,就是為了徹底解決噶爾丹的難題。康熙三十五年(1696年)二月、九月、康熙三十六年(1697年)二月,康熙三度親征噶爾丹,足可見康熙解決這一問題的決心。
再說噶爾丹,自康熙二十九年在烏蘭木通戰敗後,他雖曾向清廷認罪立誓,上書請降,但反叛之心並未改變。不久又在科布多(在今蒙古國西部)集合舊部,並向沙俄乞援,企圖重整旗鼓,東山再起。
康熙三十四年九月,噶爾丹率騎兵3萬,攻入喀爾喀蒙古車臣汗部,隨後沿克魯倫河(今蒙古國境內)東下,進抵巴顏烏蘭(今蒙古烏蘭巴托東南,克魯倫河上遊)。揚言過冬後,將借俄羅斯鳥槍兵6萬,大舉內犯。
在這種形勢下,康熙帝召集群臣商議此事,隻有極少數人讚同征討噶爾丹的主張,八旗滿洲王公大臣皆畏怯退縮,反對用兵,康熙也了解群臣們的顧慮,他說:“朕親曆行間,塞外情形,知之甚悉。自古以來,所謂難以用兵者是也。其地不毛,間或無水,至瀚海等沙磧地方,運糧尤苦。而雨水之際,樵爨頗難,區畫不周,豈可妄動。”但是康熙也知道,一旦噶爾丹得逞,他就會肆無忌憚繼續擴張,且會嚴重威脅到清朝統治。於是,康熙決定,親征噶爾丹。康熙三十五年二月,他下令發兵10萬,分東、中、西3路進擊。由黑龍江將軍薩布素統兵9000組成東路軍,越興安嶺,出克魯倫河,側擊準噶爾軍;由撫遠大將軍費揚古統兵4.6萬組成西路軍,由歸化(呼和浩特)、寧夏越過沙漠,沿翁金河北上,切斷噶爾丹退路;康熙帝自率3.4萬人組成中路軍,出獨石口(今河北省赤城北),經克魯倫河上遊地區北上,切斷噶爾丹退路,與東西兩路軍夾擊噶爾丹軍。