建安五年[200年],曹袁两军相持于官渡,张郃曾向袁绍进谏:“我方虽连胜,但勿与曹操交战,可密遣轻骑钞绝其南,则兵自败矣。”不为袁绍採纳。
袁绍派淳于琼率万余人护送军粮,屯于乌巢。曹操留将守营,亲自率兵偷袭乌巢。张郃认为曹操兵精,淳于琼必败,应迅速去救援,而袁绍的谋士郭图却建议进攻曹操的大本营。袁绍采纳了郭图的建议,张郃劝阻,袁绍不听,只派轻骑去救乌巢,而派重兵去进攻曹操的大本营,结果不能够攻下。很快,乌巢兵败,消息传来,袁军军心动摇。郭图闻讯后大为羞愧,为推卸责任,诬谗张郃不卖力作战,失败后还出言不逊。张郃心中害怕,与将军高览愤而投奔曹操。曹操闻张郃来降,十分高兴,将此事比作微子去殷、韩信归汉,于是拜张郃为偏将军,封都亭侯,授予他部队,随军作战。
建安九年[204年],张郃随曹操攻克邺城,大败袁尚。別征围幽州渔阳郡的雍奴县时,刘放正好劝王松,二袁大势已去不如投降。正好降书至,王松举雍奴、泉州、安次归附。
建安十年[205年],又别征青州东莱。(因《张郃传》这段记录有误,参考张辽、何夔等人用兵于海滨,征公孙度于东莱所置的营州刺史也应在这年。只因这段时间曹操忙于剿灭原在袁绍四州、不服从的残余势力。)
建安十一年[206年],张郃参加了征讨管承之战。(《武帝纪》记讨管承为建安十一年,故《张郃传》记录有误,不可能在柳城之战后。)
建安十二年[207年],曹操远征乌丸,张郃与张辽共为先锋。战后,张郃因功升为平狄将军。
建安十三年[208年],赤壁之战时曹操徙赵俨为都督护军,护于禁、张辽、张郃、朱灵、李典、路招、冯楷七军。
建安十四年[209年],受张辽所督,讨平陈兰、梅成等人。
建安十六年[211年],马超、韩遂叛乱,张郃随曹操出征,在渭南大破关中军。继而,张郃从征围攻安定,击降杨秋。
建安十九年[214年],马超在张鲁支持下,卷土重来,围攻祁山。张郃为夏侯渊军的先锋,督步骑五千,马超不战而逃,张郃进军收马超军的器械。并参与了平定宋建长达三十年的叛乱之战。夏侯渊别遣张郃等平河关,渡河入小湟中,河西诸羌尽降,陇右平。
建安二十年[215年],曹操亲率大军进攻汉中,从散关入,派张郃率五千步兵在前开道,一直到阳平。张鲁投降,曹操回军,留张郃与夏侯渊、徐晃等守汉中,以拒刘备。同年,张郃率兵南下进攻巴西郡,欲迁徙当地百姓到汉中。刘备派征虏将军张飞为巴西郡太守,抗击张郃。张郃军进至岩渠,被张飞击败,率残部退回南郑,改任荡寇将军。
建安二十三年[218年],刘备进攻汉中,屯于阳平,夏侯渊、张郃、徐晃等率军迎击,张郃负责防守广石。
建安二十四年[219年],刘备亲自率精兵万余人,分为十部,夜间猛攻张郃。张郃亲自率兵与蜀军进行搏斗,刘备不能攻克。次年,魏军主帅夏侯渊在定军山战死,曹军大败,张郃同败军一起退守阳平关东。司马郭淮和督军杜袭收敛散卒,推举张郃继夏侯渊为魏军主帅。张郃出任,指挥士兵,布置营寨,军心安定。刘备欲渡汉水来攻,见魏军在汉水以北列阵相迎,刘备于是放弃渡河,隔水相持。不久,曹操遣使令张郃假节。曹操亲自进攻汉中,不能取胜,于是撤出汉中的部队,令张郃屯兵于陈仓。
魏文帝黄初元年[220年],曹丕即魏王位,任命张郃为左将军,进封都乡侯。五月,张郃、杨秋、郭淮等降冯翊山贼郑甘、王照。关中始定,民得安业。十一月,曹丕代汉称帝,又进封张郃为鄚侯,随即命令张郃跟随曹真征讨安定的胡羌,之后与曹真一同进朝朝见。
黄初三年[223年],张郃同夏侯尚、曹真一起进攻江陵。
黄初四年[224年],张郃别督诸军渡江,破敌将孙盛万人,取江陵中洲,屯坞。曹丕在江陵之役结束后所颁的《丙午诏》中说这次破江陵中洲让敌“溺死者数千人”。
黄初七年[226年],五月,魏明帝曹叡即位,张郃奉命屯兵荆州。八月,孙权遣诸葛瑾、张霸犯襄阳,为司马懿、徐晃击破。张郃与司马懿进攻孙权部将刘阿等人,追至祁口交战,击败吴军。
太和二年[228年],蜀相诸葛亮第一次北伐,南安、天水、安定三郡响应。魏明帝曹叡加张郃位特进,使督诸军,与蜀将马谡战于街亭。马谡依守南山,下不据城,被张郃截断水源,杀得大败。继而,张郃又平定了三郡的反叛。魏明帝曹叡下诏嘉奖张郃,增加食邑一千,前后一共四千三百户。
司马懿在荆州训练水军,欲从沔江顺流进入长江伐吴,魏明帝曹叡命令张郃率关中诸军去荆州接受调度。张郃到达荆州后,正值冬天水浅,大船无法通行,于是又回军屯驻方城。同年年底,诸葛亮第二次北伐,出散关围陈仓。魏明帝曹叡急招张郃进京,把三万士兵交给他指挥,并派遣武卫、虎贲等侍卫保护张郃。魏明帝还亲至河南城置相酒送,问张郃能不能来得及救援陈仓,张郃判断诸葛亮军没有粮草,一定不能持久,便回答等援军赶到时,诸葛亮已经退走。张郃率军连夜西向赶至郑(南字应为西字,据任乃強的《华阳国志校补图注》所改,因张郃军根本不可能到达蜀汉的汉中郡治南郑),诸葛亮果然退军,于是奉诏还于京都,被拜为征西车骑将军。
太和四年[230年],曹真上奏大举伐蜀,明帝使司马懿由西城,张郃由子午,曹真由斜谷,数道井进会于汉中。但连续下了大雨三十余天,道路阻绝,曹真等皆还。
太和五年[231年],诸葛亮第四次北伐,张郃随司马懿前往相拒。三月,司马懿令费曜、戴陵留精兵四千守上邽,其余人马西救祁山。张郃想分兵驻雍、郿,但为司马懿否决,最后郭淮等为诸葛亮所破,上邽之麦被割,司马懿于上邽之东据险拒守。张郃说:“对方远道而来攻击我军,请战不得,谓我利在不战,欲以长远计制衡。且祁山知大军以在近,人情自固,可停在祁山并屯于此,分为奇兵,示出其后,令其不宜前进又不敢相逼,坐失民望。今亮县军粮食少,亦会自行退兵。”司马懿不纳,故寻诸葛亮于卤城。到达后登山掘营,不肯与蜀汉交战。贾栩、魏平数请战,笑其“畏蜀如虎”。五月,司马懿使张郃攻无当监王平于南围,自己则从案中道攻向诸葛亮。王平坚守张郃无法攻克。诸葛亮使魏延、高翔、吴班赴拒,大破之,司马懿还保营。
六月,诸葛亮粮尽退兵,司马懿令其追击,张郃虽劝归军勿追但司马懿不听,张郃被迫追击。追至木门,与诸葛亮军交战,中伏,被飞矢射中右膝,死亡(《后主传》则记录为死于青封),被谥为壮侯,儿子张雄继嗣。由于张郃前后征战有功,魏明帝分张郃的食邑,封张郃的四个儿子为列侯,封他的幼子爵为关内侯。
齐王正始四年[234年],张郃得享从祀於曹操庙庭。
张郃通晓应变之术,擅长布置营寨,预料战势、地形,一向准确,即使诸葛亮都对他有所顾忌。张郃虽为武将,却喜欢儒士,曾推荐同乡的卑湛,被皇帝下诏嘉奖,将张郃比作爱好儒学的东汉大将祭遵,并将卑湛提升为博士。