郭嘉少时已有长远的思量。汉末天下将乱,自二十岁左右(时人二十岁行弱冠之礼)匿名迹,只密交结英隽,不与一般人接触,故时人多不知他,惟有识者奇异之。
曾拜见过袁绍,但看出袁绍多端寡要,好谋无决,纳才而不知用,难与共济天下大难定霸王之业,遂去之。
东汉献帝建安元年[196年]曹操得力谋士戏志才死,求才于荀彧,后者荐郭嘉。曹操召见郭嘉,共论天下大事,大喜道:“能帮助我成就大业的人,就是他了!”,郭嘉也欣然:“是我真正值得辅佐的人。”,遂出仕。
刘备为吕布所逐来投时,有人劝曹操杀刘备,郭嘉劝曹操莫因一害而伤众士之心,曹操笑而附之。(关于郭嘉先劝曹操不杀刘备、后谏曹操不能遣备,参考《资治通鉴》选取《魏书》的记录。《三国志》中没有相关记载,仅见于裴注。但是《傅子》中有完全相反的记载,说郭嘉看出刘备终不为人下,劝曹操宜早图之。但当时曹操奉天子以号令天下,方招怀英雄以明大信,未沒有採纳郭嘉之议。)
建安二年[197年]年二十七,为司徒府所辟。曹操讨张绣新败,袁绍与信羞辱。曹操就北方之势问计郭嘉。郭嘉详细分析了曹操与袁绍的状况对比,提出了著名的十胜十败说,劝曹操征讨吕布。
建安三年[198年]曹操首创军师祭酒一职,並表郭嘉担任司空军祭酒,即曹操司空府的幕僚。吕布击败刘备和曹操的援军收纳了泰山贼部若干,势力壮大,虎踞徐州。曹操将战略重点转移到了东线,对吕布展开攻势。吕布在前期遇挫后固守,战役持续了大半年,曹操见士兵疲惫准备放弃。郭嘉和荀攸却看出胜机。郭嘉以项羽为例劝谏曹操,提出有勇无谋者若之气衰力竭只时便不久于败亡的观点,劝曹操急攻。曹操从谏,引沂、泗灌下邳,果然一鼓作气擒杀吕布。
建安四年[199年]曹操派刘备、朱灵和路招等击袁术。郭嘉看破刘备狼子野心,与程昱、董昭谏曰:“刘备不可遣也!”曹操从言大悔,派人追刘备回来,已经来不及了。后来刘备果然杀徐州刺史车胄据城而叛,联合东海贼寇聚数万之众欲与袁绍联兵。
建安五年[200年]曹操遣将征讨刘备,不克,欲自讨之。诸将都惧怕袁绍偷袭后方劝阻曹操,曹操拿不定主义,问计于郭嘉。郭嘉说:“袁绍性格迟缓多疑,就算要偷袭也不会很迅速。但刘备的势力刚刚聚集不久,众心未附。如果实行闪电战,必然得胜。”于是曹操举师东征,大破刘备,获其妻子,擒关羽,进而又击破了和刘备联合的东海贼寇昌豨。
孙策刚刚成就江东霸业,其时曹操和袁绍在官渡对峙,遂有谋图中原之心。曹军得知这个消息都很畏惧,只有郭嘉料道:“孙策刚刚吞并江东,所杀的都是深得人心众养死士的英雄豪杰。而孙策本人又轻率疏于防备,虽然有百万之众,但还是和孤家寡人一样容易对付。如果有刺客伏杀,只不过能凭借一人之勇罢了。我看他必然死于匹夫之手。”(此前董卓、曹操都遭到过刺杀)果然,孙策是年死于许贡家客许昭的刺杀,北进计划毁于襁褓。
建安七年[202年]袁绍已死,从征二袁,袁尚、袁谭被逐退到黎阳。
建安八年[203年]诸将想乘胜攻破二袁。郭嘉说曹操道,谭、尚素来互不相服,又有郭图,逢记这样的谋臣在当中搀和,必然要反目。不如先南征刘表,静待其变,变成而后击之,一举可定也。曹操十分赞同,于是南征,在军队进至西平的时候,果然谭、尚变起,袁谭被击败走保平原。曹操轻而易举的分别击破了袁尚和袁谭。
建安十年[205年]从攻袁谭讨斩于南皮,冀州平。郭嘉被封为洧阳亭侯。郭嘉建议曹操多招募重用青、冀、幽、并四州名士,收附民心,彻底巩固目前的控制抵御。曹操采纳了他的意见,甚至重用了曾经诋毁过自己的陈琳。
建安十二年[207年]袁尚逃入乌丸。诸将都说:“袁尚已如丧家之犬,关外夷人贪婪不义不会支援他们的。如果再做远征,刘备必然会挑拨刘表袭击许昌,万一有什么变数怎么办?”郭嘉进言道:“胡人自持偏远,现在必然没有防备,突然发动攻击,一定能够将他们覆灭。袁绍对胡人有恩,如果袁尚还活着迟早是隐患,现在四州未稳,袁家的影响还很大,这个时候南征,胡人一动,旧臣复应,民夷俱动后方就不安稳了。刘表是个只知坐谈的人,自知能力不足以驾驭刘备,必然会对他有所防备不尽其用。现在虽然是举国远征,但一劳永逸,就再也没有后患啦。”曹操听从了郭嘉的建议,立刻进兵柳城。
到了易县,郭嘉觉得推进的速度还是太慢,进言道:“兵贵神速。现在千里远征,辎重太多,行进缓慢,被对方有所觉察必然就要做防备。不如留下辎重,轻兵速进,攻其不备。”曹操于是便问计熟知当地地理的田畴,行小路奇袭柳城,大破仓促应战的敌军。在从柳城回来的途中,也许因为水土不服,气候恶劣,日夜急行操劳过度,郭嘉患疾病逝,一代星陨。曹操痛拗失声,嘉表奉孝,增邑八百户,谥贞侯,并谓荀彧等说:“你们都和我差不多年纪,只有奉孝最年轻。等到天下事竟,我还要将后事托付给他,但他夭折在巅峰之年,难道这就是命运吗!”
建安十三年[208年]曹操兵败赤壁,叹曰:“若奉孝在,不使孤至此!”,又曰:“哀哉奉孝!痛哉奉孝!惜哉奉孝!”
魏陈留王景元三年[262年]郭嘉从祀于曹操庙庭。