吐蕃是藏族于7世纪初到9世纪中叶建立的边疆民族政权。从唐高宗时期,吐蕃就与唐朝争夺安西四镇和西突厥十姓部落。双方战争不断,但仍通使往来不绝。
咸亨四年(公元673年),唐王朝派鸿胪卿萧嗣业发兵征讨依附吐蕃的疏勒军。
仪凤三年(公元678年),唐高宗李治派中书令李敬玄等人率兵18万进攻吐蕃。双方先战于龙支,结果吐蕃退走。唐军继续深入,在青海湖附近与论钦陵率领的吐蕃主力交战,唐军大败。唐将黑齿常之率敢死队夜袭吐蕃军,唐军才得以乘敌混乱之际退回鄯州。
垂拱三年(公元687年),吐蕃翻越喀喇昆仑山和昆仑山进入西域,攻克安西四镇,长驱东向,其前锋直达敦煌(今甘肃敦煌西)。
长寿元年(公元692年),唐将王孝杰率兵从西州(今新疆吐鲁番)出发,转战数千里,直至于阗等地,大破吐蕃,夺取安西四镇。
延载元年(公元694年),唐将王孝杰大败吐蕃与西突厥余部的联军。
此后,唐王朝在河陇一带改为守势,屯田备边。吐蕃在河陇至剑南一带的战略则是稳扎稳打,逐步扩大其占领区域。吐蕃对唐王朝的进攻多限于边境地区,一般不会大举深入。
唐玄宗时期,唐蕃战争仍是主要在河陇和西域两个战场上进行。两个战场互相策应,仍以河陇一带为主战场。在剑南一带也仍有一些较小规模的战事。
开元二年(公元714年)秋,吐蕃大将坌达延、乞力徐等率兵10多万进攻唐朝的临洮、兰州、渭州等地,唐王朝派陇右防御使薛讷、太仆少卿王晙率兵反击。唐军主力并不固守城池,而是实施机动,寻机歼敌。十月,唐军以夜袭发起进攻,大败吐蕃于武街(今甘肃临洮东)附近的山谷中,然后又追击逃敌,连战连捷。此后,经过多年征战,唐王朝巩固了河陇一带的防务,开始发动一系列主动进攻。
开元十七年(公元729年),唐王朝朔方节度使李祎率军远程奔袭,攻下了吐蕃占据的战略要地石堡城,并分兵据守各重要地点,开拓边境500多千米。开元二十五年(公元737年),吐蕃攻打小勃律,小勃律向唐王朝告急。唐玄宗命河西节度使崔希逸击吐蕃。唐军深入吐蕃到青海西部,大破吐蕃军。
开元二十六年(公元738年),唐将杜希望先后攻占吐蕃的新城、河桥等地。开元二十九年(公元741年),吐蕃再度攻占石堡城。天宝八年(公元749年),唐王朝陇右节度使哥舒翰率军夺回石堡城,又派兵在赤岭以西屯田。天宝九年(公元750年),唐军攻占了吐蕃的树敦城。
天宝十二年(公元753年),哥舒翰再次攻打吐蕃,攻克其洪济、大漠门等城,尽收九曲部落,夺取了吐蕃东进的后勤基地。天宝十三年(公元754年),两政权的分界线已向西推进到青海湖至黄河河曲以西一线。至此,唐王朝在河陇战场上已占明显优势。
“安史之乱”爆发以后,唐王朝调河西、陇右、西域等地军队的精锐东援。吐蕃乘虚而入,先后侵占了河陇、西域之地。于是,主要战场东移到了今宁夏、甘肃东部、陕西及四川西北部,双方由以河陇、西域两个战场互相策应改为以今陕甘宁和川西北两个战场互相策应。
吐蕃常长驱直入大唐境内,唐都长安也处于吐蕃的威胁之下。广德元年(公元763年),吐蕃甚至一度攻占长安。当时,唐将郭子仪在兵力不足的情况下,广设疑兵,吐蕃不知虚实,据长安10多天之后退走。
永泰元年(公元765年),吐蕃与回鹘等联兵入侵唐境,围困泾阳。唐军避其锐气,严守不战,并离间两者的关系。等到吐蕃撤退之时,唐军又与反戈的回鹘合军追击,大破吐蕃。
大历三年(公元768年),吐蕃攻打灵武。唐王朝朔方骑将白元光反击,在灵武外围歼敌2万。与此同时,唐将李晟迂回敌后,奇袭吐蕃后勤基地定秦堡(今甘肃临洮境内),烧其粮草,迫使吐蕃撤围退走。
贞元二年(公元786年),吐蕃再次入侵唐境。李晟派精兵在汧城设下埋伏,最终击败了吐蕃。此后,李晟又派兵袭破吐蕃后方的摧砂堡,并烧其粮草,吐蕃被迫北撤。
贞元十七年(公元801年),吐蕃攻打灵、朔等州。唐王朝以“围魏救赵”之策,派西川节度使韦皋从成都西山攻入吐蕃。韦皋军转战千里,大破吐蕃,迫使吐蕃从灵、朔撤兵南下。
唐王朝和吐蕃都很重视建立自己的同盟。最初是吐蕃联合回鹘、南诏攻唐,后来,唐朝分化瓦解了吐蕃与回鹘、南诏的同盟关系,并北和回鹘,南通南诏,西结大食、天竺,使吐蕃四面受敌,其兵力大半驻扎在西域,抵御大食的东进。从此,吐蕃再也无力大举攻唐。
从唐穆宗到唐末,唐朝与吐蕃的战争已进入尾声。吐蕃此时已进入衰亡时期,由于对大食、回鹘等国的战争占用了其大部分兵力,已无力东进。唐王朝由于内有藩镇割据混战,外有与南诏等国的战争,也无力西进。于是,双方从穆宗长庆年间会盟修好之后,除了偶然有边境冲突之外,再也没有发生大的战事。