耿弇的父亲耿况,曾与王莽从弟王伋同学,后为朔调连率(即上谷太守)。耿弇少年时期以勤奋好学著称。常见郡中岁终举行郡试,讲武练兵,由衷爱好,因而学习骑射,喜好兵法。
更始元年(23),刘玄建立更始政权,派遣将领占据各地,其中有人凭借权势撤换了一些郡县的太守县令。耿况因是王莽任命的官员,心中非常不安,命年方二十一岁的耿弇去朝见刘玄,贡献方物,以图巩固自己的地位。耿弇从上谷南行至宋子县,适逢王郎自称汉成帝之子刘子舆,在邯郸起事。随从耿弇的上谷郡吏孙仓、卫包信以为真,遂投奔王郎。耿弇因长安道路阻隔,听说更始大司马刘秀在卢奴,乃北上晋见,被任命为门下吏。耿弇请求回上谷发兵攻取邯郸,刘秀笑道:“小小年纪竟有大志啊!”因此数次召见他并加恩慰。
不久,刘秀北至蓟城。后来,刘秀听说邯郸派兵来蓟,欲要南下,召集官属商议。耿弇道:“渔阳太守彭宠,是您的同乡;上谷太守,是我的父亲。发动这两郡人马,有万骑之众,邯郸是容易夺取的。”刘秀官属都不愿北行,刘秀却指着耿弇道:“这是我的北道主人。”恰巧这时蓟城骚乱,刘秀匆忙南下,官属各自分散。
平定河北
更始二年(24),耿弇回到昌平,劝说父亲耿况归附刘秀。耿况派寇恂前往渔阳,约同渔阳太守彭宠发兵支持刘秀,二郡各发骑兵二千、步兵一千。于是,耿弇、寇恂、景丹率上谷兵与吴汉所率渔阳兵会师南下,沿途击斩王郎的大将、九卿、校尉以下四百余人,攻取涿郡、中山、巨鹿、清河、河间所属二十二县,终于在广阿追上了刘秀。这时,刘秀正在进攻王郎,见二郡兵马前来非常高兴,封耿况为大将军、归义侯,耿弇、吴汉等人皆为偏将军。此后,耿弇等人随刘秀攻克邯郸。
刘玄见刘秀声威日盛,对他产生疑忌,于是遣使者立其为萧王,令他罢兵率领部下将士回长安,又派遣苗曾为幽州牧,韦顺为上谷太守,蔡充为渔阳太守,企图瓦解刘秀在河北的势力。当时刘秀居住于邯郸宫温明殿,耿弇前至床前道:“今更始失政,君臣淫乱,诸将在京畿之内擅作威福,王公贵戚们在京都纵横暴虐。天子之命,出不了城门,下面的州牧郡守,动不动就被迁徙更换,百姓不知所从,士民莫敢自安。虏掠财物,劫掠妇女,怀有金玉的大富显贵,没有能生还的。平民百姓捶胸顿足,反而更加思念王莽。又有铜马、赤眉等起义军,拥众数十百万,更始不能剿灭。更始的失败为期不远。您首举义旗于南阳,破百万之军;今平定河北,据有天府之地。以大义讨伐,发出号令,群起响应,天下只要传檄就可平定。天下是最为重要的,不可让外姓人得到。听说有使者从西方来,要你罢兵,千万别听。今官吏士卒死亡的多,我愿回幽州去,增发精兵,以成大计。”
刘秀听了十分高兴,拜耿弇为大将军,令他与吴汉北上征发幽州十郡兵马。耿弇到上谷,斩杀韦顺、蔡充,吴汉也杀掉苗曾。不久,耿弇率幽州兵南下,随刘秀转战河北,击破铜马、高湖、青犊、赤眉、尤来、五幡、大枪等各路农民军,屡立战功。
横扫山东
建武元年(25),刘秀称帝。耿弇拜建威大将军,与景丹、陈俊攻破厌新贼。建武二年(26),耿弇封好畤侯,食邑两县。建武三年(27),延岑自汉中出武关,侵扰南阳各县,攻破数城。耿弇率军与延岑大战于穰县,大败敌军。延岑率数骑逃奔东阳,与秦丰合兵一处。此时,彭宠攻陷蓟城,自称燕王,涿郡太守张丰起兵响应。耿弇击败延岑后,
随刘秀至舂凌,请求“定彭宠于渔阳,取张丰于涿郡,还收富平、获索,东攻张步,以平齐地”。刘秀甚为嘉许。建武四年(28),刘秀命耿弇进攻渔阳。耿弇因父亲耿况曾与彭宠有交情,又没有家属留在洛阳,恐怕引起疑心,上书请求回还洛阳。刘秀下诏要他放心,并命他与王常一起屯兵涿郡。耿况闻知命耿国到洛阳侍候天子,以表忠心。刘秀进封耿况为隃麋侯,命耿弇与建义大将军朱祐、汉忠将军王常等进攻望都、故安等地农民军。建武五年(29),耿弇与大司马吴汉迫降平原地区的富平、获索两支农民军。刘秀遂命耿弇进讨张步。
耿弇率骑都尉刘歆、太山太守陈俊率兵东进,从桥阳桥渡河。张步得知,派大将军费邑屯军历下,又分兵屯祝阿,又在太山钟城列数十座军营待耿弇来攻。耿弇渡过黄河后先攻取祝阿,围城时故意留一角,使祝阿人逃奔钟城。钟城兵民闻祝阿失守,纷纷逃奔,于是汉军不战而取得了钟城要塞。费邑又派其弟费敢把守要隘巨里(地名),令军中修理攻具,扬言三日后攻巨里,引诱费邑前来救援。费邑果然统率三万精兵前来,耿弇留三千人围巨里,自率精兵埋伏山坡两侧,当费邑兵到,居高临下冲溃敌军,斩杀费邑,费敢逃走。然后,耿弇纵兵扫荡未降的残兵四十余营,一举平定了济南郡。
当时张步定都于剧县(今山东昌乐县西),耿弇攻克济南郡后,进逼剧城。张步派其弟张蓝率领精兵二万驻守临淄西北的西安,各郡太守所部万余人驻守临淄,相距四十余里。耿弇进军画中(地名),处在二城之间。耿弇见西安城小而坚固,张蓝部下多是精兵,易守难攻,临淄城虽大而易攻,便准备采取声东击西的策略,扬言五日后将攻西安。张蓝闻知后,日夜警戒严守。到了后四日夜半,耿弇却命诸将赶到临淄城下。护军荀梁等认为应速攻西安。耿弇道:“西安听说我们要攻它,日夜作了准备;临淄出其不意而到,必定惊扰,我攻它一天就能拿下。攻下临淄西安就孤立了,张蓝与张步隔绝,必定再逃亡而去,这就是击一而得二的良计。若先攻西安,一时不能破城,屯兵在坚城之下,死伤必多,即使能攻下,张蓝引军还奔临淄,合并兵力,坐观虚实,我深入敌地,后面粮草供应不上,十日之间,不战而困了。诸君的意见,不见得合适。”于是进攻临淄,半天便破城,进据城内。张蓝听到后率部逃归剧县。
耿弇命令军中不得妄自侵掠,到达剧县城下,必须等到张步到了才发起进攻,以激怒张步。张步听到后大笑说:“以尤来、大彤十多万众,我都就其营而打败他。今天耿弇兵比他们少,又都疲劳,有什么可怕呢!”于是与三弟张蓝、张弘、张寿及大彤大帅重异等率兵到临淄大城东,欲攻打耿弇。耿弇先出淄水,与重异相遇,故意示弱以盛其气焰,回兵小城,陈兵城内。张步气盛,直攻耿弇营地,与刘歆等大战。耿弇登上王宫的坏台观看,又自率精兵从侧面突击张步兵阵,大破张步。战中,飞矢射中耿弇股部。次日早晨,耿弇又勒兵出战。陈俊对耿弇说:“剧贼兵强盛,可暂时闭营休养士卒,以等待皇帝到来。”耿弇说:“天子将到,臣子应杀牛洒酒以等待百官的到来,反而还要以贼虏来麻烦君上吗?”于是出兵大战,自清晨至黄昏,再次大破张步军,杀伤无数。耿弇知道张步兵困将退,预先设置左右两翼伏兵以待。到深夜,张步果然引兵退去,两翼伏兵奋起纵击,追到钜昧水,八九十里死尸相连,收得辎重两千多辆。张步回剧县,兄弟各自分兵散去。
几日后,刘秀亲自到临淄劳军。群臣大会,刘秀盛赞耿弇,并将其与韩信相比。不久,耿弇再次追击张步。张步逃到平寿,脱去上衣身负斧锧请罪于军门。耿弇送张步到行辕,而勒兵进据其城。后来。耿弇再引兵至城阳,收降五校余党,平定齐地,凯旋回京。
征讨陇右
建武六年(30),耿弇西拒隗嚣,屯兵于漆县。建武八年(32),耿弇又随刘秀进攻陇右。建武九年(33),耿弇与中郎将来歙分兵平定安定、北地诸营堡。
晚年生活
建武十三年(37),刘秀命增加耿弇的食邑。不久,耿弇上缴大将军印绶,以列侯身份列席朝会。刘秀每遇四方有不同意见,经常召见耿弇顾问筹策。
永平元年(58),耿弇病逝,年仅五十六岁,谥封为愍侯。