沙俄政府在雅克萨失败以后,并不甘心,就在尼布楚条约签订的第二年,又唆使准噶尔部(蒙古族的一支)的首领噶尔丹进攻漠北蒙古。
那时候,蒙古族分为漠南蒙古、漠北蒙古和漠西蒙古三个部分。除了漠南蒙古早已归属清朝外,其他两部也都臣服了清朝。准噶尔是漠西蒙古的一支,本来在伊犁一带过游牧生活。自从噶尔丹统治准噶尔部以后,他野心勃勃,先兼并了漠西蒙古的其他部落,又向东进攻漠北蒙古。漠北蒙古抵抗一陈失败了,几十万的漠北蒙古人逃到漠南,请求清朝政府保护。康熙帝派使者到噶尔丹那里,叫他把侵占的地方还给漠北蒙古。噶尔丹自以为有沙俄撑腰,十分骄横,不但不肯退兵,还以追击漠北蒙古为名,大举进犯漠南。
康熙帝召集大臣宣布他决定亲征噶尔丹。他认为噶尔丹气势汹汹,野心不小,既然打进来,非反击不可。公元1690年,康熙帝分兵两路:左路由抚远大将军福全率领,出古北口;右路由安北大将军常宁率领,出喜峰口,康熙帝亲自带兵在后面指挥。
右路清军先接触噶尔丹军,打了败仗。噶尔丹长驱直入,一直打到离开北京只有七百里的乌兰布通(今内蒙古昭乌达盟克什克腾旗)。噶尔丹得意扬扬,还派使者向清军要求交出他们的仇人。
康熙帝命令福全反击。噶尔丹把几万骑兵集中在大红山下,后面有树林掩护,前面又有河流阻挡。他把上万只骆驼,缚住四脚躺在地上,驼背上加上箱子,用湿毡毯裹住,摆成长长的一个驼城。叛军就在那箱垛中间射箭放枪,阻止清军进攻。
清军用火炮火枪对准驼城的一段集中轰击,炮声隆隆,响得震天动地。驼城被打开了缺口。清军的步兵骑兵一起冲杀过去,福全又派兵绕出山后夹击,把叛军杀得七零八落,纷纷丢了营寨逃走。
噶尔丹一看形势不利,赶快派个喇嘛到清营求和。福全一面停止追击,一面派人向康熙帝请示。康熙帝下令说:“快进军追击!别中了贼人的诡计。”果然,噶尔丹求和只是缓兵之计,等清军奉命追击的时候,噶尔丹已经带了残兵逃到漠北去了。
噶尔丹回到漠北,表面向清朝政府表示屈服,暗地里重新招兵买马。公元1694年,康熙帝约噶尔丹会见,订立盟约。噶尔丹不但不来,还暗地派人到漠南煽动叛乱。他扬言他们已经向沙俄政府借到鸟枪兵六万,将大举进攻。内蒙古各部亲王纷纷向康熙帝告发。
公元1696年,康熙帝第二次亲征,分三路出击:黑龙江将军萨布素从东路进兵;大将军费杨古率陕西,甘肃的兵,从西路出兵,截击噶尔丹的后路;康熙帝亲自带中路军,从独石口出发。三路大军约定时期夹攻。
康熙帝的中路军到了科图,遇到了敌军前锋,但东西两路还没有到达,这时候,有人传说沙俄将要出兵帮助噶尔丹。随行的一些大臣就有点害怕起来,劝康熙帝班师回北京。康熙帝气愤地说:“我这次出征,没有见到叛贼就退兵,怎么向天下人交代;再说,我中路一退,叛军全力对付西路,西路不是危险了吗?”
当下,康熙帝决定继续进兵克鲁伦河,并且派使者去见噶尔丹,告诉他康熙帝亲征的消息。噶尔丹在山头一望,见到康熙帝黄旗飘扬,军容整齐,连夜拔营撤退。
康熙帝一面派兵追击,一面赶快通知西路军大将费扬古,要他们在半路上截击。
噶尔丹带兵奔走了五天五夜,到了昭莫多(在今蒙古人民共和国乌兰巴托东南)正好遇到费扬古军。昭莫多原是一座大树林,前面有一个开阔地带,历来是漠北的战场。费扬古按照康熙帝的部署,在小山的树林茂密地方设下埋伏,先派先锋四百人诱战,边战边退,把叛军引到预先埋伏的地方,清军先下马步战,听到号角声起,就一跃上马,占据了出顶。叛军向山顶进攻,清军从山顶放箭发枪,展开了一场激战。费扬古又派出一支人马在山下袭击叛军辎重,前后夹击。叛军死的死,降的降。最后,噶尔丹只带了几十名骑兵脱逃。
经过两次大战,噶尔丹判乱集团土崩瓦解,康熙帝要噶尔丹投降,但是噶尔丹继续顽抗。隔了一年,康熙帝又带兵渡过黄河亲征。这时候,噶尔丹原来的根据地伊犁已经被他侄儿策妄阿那布坦占领;他的左右亲信听说清军来到,也纷纷投降,愿意做清军的向导。噶尔丹走投无路,就服毒自杀。
打那以后,清政府重新控制了阿尔泰山以东的漠北蒙古,给当地蒙古贵族各种封号和官职。清政府又在乌里雅苏台设立将军,统辖漠北蒙古。
后来,噶尔丹的侄儿策妄阿那布坦攻占西藏。公元17,康熙帝又派兵远征西藏,驱逐了策妄阿那布坦,护送
赖喇嘛六世进藏。以后,清政府又在拉萨设置驻藏大臣,代表中央政府同
赖、班禅共同管理西藏。