哥舒翰的祖先是突骑施酋长哥舒部的后代。他的父亲是哥舒道元,任安西都护将军、赤水军使,因此仍然世代住在安西。哥舒翰少年时任效毂府果毅官,家里非常富有,行侠义重承诺,在长安街上随意赌博喝酒。四十多岁时,父亲去世了,也不回去。因为没受到长安县县尉的礼遇,激动发愤,跑到河西,在节度使王亻垂的手下办事。王亻垂进攻新城,派哥舒翰指挥,略有了点名气。后又在王忠嗣的手下办事,被任命为衙将。哥舒翰能读懂《左氏春秋》、《汉书》,精通主要内容。不重钱财,常赠送、奖赏兵将,所以兵将都向着他。后任大斗军副使,辅佐安思顺,两人互不服气。王忠嗣又派他去讨伐吐蕃,副将见面时很傲慢,哥舒翰发怒了,立刻杀死了他,部下都害怕了。后升任左卫郎将。
吐蕃进犯边境,与哥舒翰在苦拔海遭遇。吐蕃把军队分成三行,从山上参差不齐地冲下来,哥舒翰手持半截矛迎战,所到之处敌军都败逃了,名声在全军中数第一。后被提升为武卫将军、陇右节度副使、河源军使。此前,吐蕃每年等积石军的麦子熟了,就来收割,没人能够禁止。哥舒翰派王难得、杨景晖在东南山沟里埋伏。吐蕃派五千名骑兵进入境内,放马解甲,准备下田割麦,哥舒翰从城中飞马前来进攻,吐蕃军受惊逃跑,追击时,伏兵杀出,将敌兵全部杀死了,没有一名骑兵逃回去。哥舒翰有次追击敌军,战马受惊,陷到河里,吐蕃三位将领想刺杀他,他大吼一声,敌将都持矛不敢动手,救兵来了,追上把他们都杀死了。
哥舒翰有名家奴叫左车,十六岁,因力气大有名。哥舒翰擅长使用矛,追上敌人后,把矛对准他的肩上,大吼一声,敌人回头看,哥舒翰就刺中他的咽喉,把他挑起来,腾空有五尺多高,才落下来,左车就下马割下他的头,成了惯例。
遇上王忠嗣被治罪,皇帝召哥舒翰进京朝拜,部下将领请求带钱财去救王忠嗣,哥舒翰只带行装,说道“:如果我的计谋成功了,哪里需要钱财?如果不成功,有行装就够了。”哥舒翰到朝廷朝拜,皇帝不带成见地接见他,和他谈话,认为他不寻常,任命他为鸿胪卿、陇右节度副大使。哥舒翰谢恩后,就极力说王忠嗣受冤枉。皇帝起身去宫中,哥舒翰跟着皇帝磕头,并且哭了。皇帝醒悟了,将王忠嗣贬官免死,王忠嗣没被杀头,朝官们都称赞他仗义。
过了一年,他在青海湖边筑神威军,吐蕃攻破了它。他又在龙驹岛筑城,当时有白龙出现过,因此称这城为应龙城。
哥舒翰观察当地河流和土地适宜畜牧,就派两千名罪犯去驻守,从此吐蕃不敢接近青海湖。天宝八年(749),有诏命哥舒翰率朔方、河东群牧兵十万名攻打吐蕃石堡城。几天没攻下,哥舒翰发怒了,打了部将高秀岩、张守瑜,要杀他们,高秀岩请求给三天时间,按期攻下了它。
于是将赤岭作为西部边塞,进行屯田,准备军需品。加封为特进官,赏赐更丰厚了。天宝十一年(752),又加封为开府仪同三司。
哥舒翰一贯和安禄山、安思顺合不来,皇帝常想让他们和解。遇上他们三人都来朝拜,皇帝就派骠骑大将军高力士在城东设宴,哥舒翰等都去了。有诏命尚食生杀鹿,用血煮汤做热洛何赏给他们吃。哥舒翰的母亲是于阗国王的女儿。安禄山对哥舒翰说“:我们的父亲是胡人,母亲是突厥人;您父亲是突厥人,母亲是胡人。种族都一样,怎能不友好呢?”哥舒翰说“:俗话说‘狐狸对巢穴叫,不吉利’,因为它忘了本。兄长既然愿和我交好,我敢不一心友好吗?”安禄山以为哥舒翰讥讽他是胡人,发怒骂道:“突厥种竟敢这样?”哥舒翰想回骂他,高力士用眼色阻止了,哥舒翰假托酒醉走了。
过了一段时间,晋爵为凉国公,兼任河西节度使。攻下了吐蕃洪济、大莫门等城,占领了黄河九曲,在这地区设洮阳郡,筑神策、宛秀两个军。又晋爵为西平郡王,并赏给他乐师、田地花园,又赐他一个儿子为五品官,部将也各有封赏。
宰相杨国忠讨厌安禄山,告发他反叛的表现,因此和哥舒翰结为深交。不久,又晋升太子少保。哥舒翰爱喝酒,享受音乐女色不节制,因而患了风痹,身体不能行动。因病残疾后,就回到了京城,闭门不去朝拜了。
天宝十四年(755),安禄山反叛了,封常清率唐军战败。皇帝就召见哥舒翰,任命为太子先锋兵马元帅,命田良丘任军司马、萧昕任判官,王思礼、钳耳大福、李承光、高元荡、苏法鼎、管崇嗣任部将,火拔归仁、李武定、浑萼、契必艹宁率自己的部队隶属于他,总计有河西、陇右、朔方、奴刺等十二部二十万军队守卫潼关。军队开始东行,先锋的大旗碰到城门上,主帅标志掉到地上,旗杆折断了,大家都为此感到害怕。皇帝到勤政楼送行,下诏命哥舒翰率军前进,过城门不要下车,群臣到郊外饯行,旗帜排列有两百里长。哥舒翰害怕,多次说自己有病,皇帝不听他的。但他因病不能管事,将军中事务交给田良丘管,又命王思礼主管骑兵,李承光主管步兵。三个人争当指挥,军令不能统一,军队不齐心,纪律差,没有斗志。第二年,升任尚书左仆射、同中书门下平章事。安禄山派儿子安庆绪进攻潼关,哥舒翰把他打跑了。
先前,安思顺估计安禄山必定反叛,曾对皇帝说过,因此没连坐治罪。哥舒翰既讨厌安禄山,又恨安思顺。到这时,知道兵权在握,上奏请求治他的罪,皇帝不想违拗他,就假冒给安禄山送信的,让潼关巡逻的抓住献上。哥舒翰因此上疏列举安思顺的七条罪状,请求杀死他。
皇帝下诏杀死了安思顺和弟弟安之贞,流放了他们的家属。杨国忠开始害怕了。有人劝哥舒翰说“:安禄山本来用杀杨国忠的理由起兵,现如留三万兵守潼关,率全部精兵渡过氵产水杀死杨国忠,这是汉朝挫败七国叛乱的办法。”王思礼也劝哥舒翰。哥舒翰犹豫而没出兵,计谋略有泄露。杨国忠大惊,进宫求见皇帝说:“兵法说,居安思危。大军在潼关但无后备,万一作战失利,京城就危险了。”于是招募了监牧小儿三千名,日夜训练,任命剑南的将领们分别率领他们。
又招募了一万兵驻扎在灞上,派心腹杜乾运任主帅。哥舒翰怀疑他要算计自己,上奏请求将杜乾运的军队划归他统率,因而假托召杜乾运商量事情,杜乾运到他的军营来后,哥舒翰立即将他在军门斩首示众,吞并了他的军队。杨国忠更害怕了,对他的儿子说:“我死无葬身之地了。”
但哥舒翰自己也不安心,加上计划长期没做决断。他多次上奏说“:安禄山虽然占据了河北,但不得人心,请求稳妥地对付他,等到他们分裂了,可以不战就抓获他。”叛军将领崔乾..驻扎在陕郡,隐蔽了军队,只布置一点弱兵来引诱唐军进攻。间谍报告说:“叛军没有防备,可以进攻。”皇帝相信了,下诏命哥舒翰进兵讨伐。哥舒翰报告说“:安禄山长期带兵,现刚称帝,不会没有准备,这是他用计引诱我们。叛军从远处来,有利在速战。我军只应坚守,不应轻率出关,这是上策。况且各地的军队还没集中,应该观察局势,不必速战。”
这时,安禄山虽然攻占了河北、洛阳,但所过之处杀人如麻,人们都恨他,因此很长时间没能攻占一点地方。加上郭子仪、李光弼的军队继续前进,攻占了常山等十多个郡。安禄山开始后悔不该反叛了,准备回到幽州去固守。但杨国忠担心哥舒翰算计自己,胡乱劝皇帝催他出潼关去收复陕州、洛阳。当时郭子仪、李光弼在河北分析说:“哥舒翰有病并且年迈,叛贼都知道,部下各军都是匆忙集中的不能力战。现叛军用全部精兵南攻宛丘、洛阳,而用剩余的军队守卫幽州,我们直攻幽州,捣毁他们的巢穴,将叛军的亲属抓住招降叛军,安禄山的头就可到手。如果哥舒翰的军队出了潼关,京城出了问题,天下就危险了。”于是极力请求令哥舒翰固守潼关不要出兵。
但皇帝听了杨国忠的话,派使者催促出兵,一个使者接着一个。哥舒翰被逼得没有办法。六月份,率军东征,大哭着出了潼关,驻扎在灵宝县的西原,与崔乾..会战。从潼关出去十七里远,路险且窄,路南边是山,北边是黄河,叛军派几千人先埋伏在险要地方。哥舒翰坐船在河中观察情况,认为崔乾..的军队少,轻视他们,催军队进兵,路险队伍乱了。叛军登高推岩石砸下来,砸死很多士兵。哥舒翰和田良丘登上北岸的山丘,率兵三万隔河击鼓,王思礼率精兵在前边,其余十万军队在后边。崔乾..布阵,有的一行十人,有的五人,有的后退,有的前进,但将五千精锐的长刀手排在阵后,唐军见叛军军阵混乱,指着看并且嘲笑他们,说道“:抓住敌将再会餐。”
开战后,崔乾..军旗帜有些歪倒下去,像想逃跑的样子,唐军松懈了,没有防备。叛军伏兵突然杀出近战,并且都拼命作战。哥舒翰用毛毡蒙着马车,上面画上龙和虎,装饰有金银的爪子和眼睛,想惊吓叛军,士兵拿着戈和箭准备追击。叛军用柴草塞住道路,顺风放火烧车,烈焰冲天,黑烟满天,士兵不能互相辨别,自相砍杀,死伤累累,很长时间才弄明白,同时丢掉铠甲跑到山谷里和掉到河里淹死了的有十分之一二。黄河中有运粮船一百多艘,士兵们抢着上船,船都压沉了,甚至有人把长矛盾牌绑起来坐着渡河,哭叫声惊天动地。叛军乘机进攻,唐军都逃跑了。先前,关门口有三道壕沟,宽两丈,深一丈,人和马逃跑时都跌了进去,一会儿都填满了,后到的人就踏着死尸逃进关内。
战败后,哥舒翰率几百名骑兵渡过黄河回到军营,老弱兵只有八千人,回到潼津,招集失散士兵再来守卫潼关。崔乾佑进兵攻城,这时火拔归仁等人把哥舒翰骗出关外,哥舒翰说:“有什么事?”
他们说“:您率二十万军队,一天就丢光了,带这点军队回哪里去?您不知道高仙芝等人的下场吗?”哥舒翰说“:我宁愿像高仙芝那样去死,你们放了我吧。”火拔归仁不听,把他抓住投降了叛军,戴上刑具,送到了洛阳,长安震惊,因此皇帝西逃了。安禄山见到哥舒翰后责问他说“:你总是瞧不起我,现在怎么样?”哥舒翰跪拜认罪说:“您是开创天下的皇帝。现国内还未平定,李光弼在土门,来調在河南,鲁炅在南阳,为臣给皇上写信去招降他们,三处都可以平定了。”安禄山高兴了,就任命他为司空、同中书门下平章事。安禄山把火拔归仁绑起来,说:“你背叛主人不顾道义,我容不得你。”就把他杀了。哥舒翰写信招降众将,众将都谴责他不守节而死。安禄山知道招降不能成功,就把他关押起来。洛阳收复后,安庆绪带着哥舒翰渡过黄河去了,到战败后,就把他杀了。
哥舒翰对人严厉,不爱惜士兵。军队行动时不过问士兵的饥饿寒冷,有人吃了老百姓的桑葚,他就痛打侮辱。监军李大宜在军队中,也不管事,和将领们赌博、喝酒,弹箜篌琵琶取乐,但士兵们米糠都吃不饱。皇帝命宦官袁思艺慰问军队,士兵都诉说衣服穿破了,皇帝就拆宫中多余的衣服,制战袍十万套赐给哥舒翰的军队,他藏到仓库里,到战败后,还原封未动。
先前,有门客梁慎初给哥舒翰写信,请求坚守不出战来制服叛军,哥舒翰认为他说得好,任命他为左武卫胄曹参军,留在官府中。到哥舒翰和杨国忠不合,梁慎初说:“灾难要降临了。”就逃跑了。
哥舒翰丢失了潼关,华阳、冯翊、上洛郡的官员都逃跑了。皇帝派剑南将领刘光庭等人率刚招募的军队一万多人去增援哥舒翰,还没到达,哥舒翰已被绑架走了。后来哥舒翰被赠官太尉。赐谥号叫武愍。