薛仁贵任安东都护时,吐蕃渐趋强盛,击灭了羌族建立的吐谷浑,又侵略唐西域地区。为此,唐高宗调任薛仁贵为逻婆道行军大总官,并以阿史那道真、郭待封为副将,率军十余万人,征讨吐蕃。
薛仁贵奉命西行,军至大非川(今青海共和县西南切吉平原;一说今青海湖西布哈河),将趋乌海(今青海光海县西南苦海),薛仁贵对阿史那道真和郭待封说:“乌海地险而瘴,吾人死地,可谓危道,然速则有功,迟则败。今大非岭宽平,可置二栅,悉内辎重,留万人守之,吾倍道掩贼不整,灭之矣。”郭待封自愿留守,薛仁贵又嘱咐他千万不可轻举妄动。
薛仁贵安排好后,率部前往乌海,及至河口,遇吐蕃守军数万人,薛仁贵率军一阵冲杀,斩获殆尽。薛仁贵收其牛羊万余头,鼓行而西,直逼乌海城,然后派千余骑兵回大非川接运辎重,但这时郭待封已被吐蕃击败。薛仁贵因无辎重接济,退军大非川。至此,吐蕃调集40万大军前来进攻,唐军抵敌不住,大败。但吐善并不穷逼,以唐军不深入为条件与唐议和,薛仁贵不得已应允,然后率败军东归。战后,他因败绩被免为庶人。
不久,高丽地区相率叛唐。唐高宗起用薛仁贵为鸡林道总管,以经略辽东。任内,薛仁贵因事违法,贬象州,后遇赦免而还。
薛仁贵晚年,吐蕃势力向北发展,阻断瓜(治今甘肃安西东南)、沙(治今甘肃敦煌),同时,突厥也不断侵扰唐北境。这时,唐高宗念及薛仁贵功劳而召见他,之后,任用他为瓜州长史,右领军卫将军,兼代州都督,率军前往云州(今山西大同市)击突厥。突厥闻薛仁贵复起为将,都非常害怕,不敢当其锋,一时奔散。薛仁贵乘势进击,大破突厥,斩首万余级,俘获两万人,及牛马羊三万余头。
薛仁贵于永淳二年( 683年)去世,终年70岁。死后,朝廷赠左骁卫大将军,幽州都督,官府还特造灵舆。护丧还归故里。
薛仁贵为唐朝名将,勇于力战,长于用兵,深于谋略,建立了赫赫战功,从而为唐前期的强盛做出了积极的贡献。不过他在战争中有时治军不严,纵兵掳掠,收受赂贿,又往往斩杀过多,失之残酷。薛仁贵还忠于职守,从他任安东都护时的情况看,也有一定的理政才能。