只顧著催促軍隊追趕。當於禁和李典趕到一處狹窄的地方時,他們發現兩邊都是蘆葦。李典對於禁說:“欺敵者必敗。這條路很窄,兩邊都是山,樹木叢生,如果他們用火攻,我們怎麼辦?”于禁說:“你說得對,我應該去告訴都督。”於是李典勒馬回去,大聲叫後面的軍隊慢行,但已經來不及了。于禁騎馬大叫讓前軍都督停下,夏侯惇正走著,見於禁從後面奔來,便問他為什麼。于禁說:“這條路很窄,兩邊都是山,樹木叢生,他們可能會用火攻。”夏侯惇這才猛然醒悟,立刻命令軍隊停止前進。但話還沒說完,後面就傳來震天的喊聲,只見火光沖天,兩邊的蘆葦也燒了起來。一時間,四面八方都是火,而且風勢很大,火勢越來越猛。曹軍的人馬在火中自相踐踏,死傷無數。趙雲率軍回擊,夏侯惇冒著濃煙和烈火逃走。
李典看到形勢不妙,急忙逃回博望城,但在火光中遇到了一隊軍隊攔住去路。領頭的將軍是關羽。李典與他混戰一番後,奪路而逃。于禁看到糧草車輛都被火燒燬,便沿著小路逃走了。夏侯蘭和韓浩去救糧車,卻遇到了張飛。他們戰了幾個回合後,張飛一槍刺死了夏侯蘭,韓浩也逃走了。一直殺到天亮,才收兵回營,戰場上屍橫遍野,血流成河。
後來有人寫了一首詩來描述這場戰鬥:博望相持用火攻,指揮如意笑談中。直須驚破曹公膽,初出茅廬第一功!夏侯惇收拾了殘軍,自己回許昌去了。
卻說諸葛亮指揮軍隊回到營地。關羽和張飛兩人相互議論道:“諸葛亮真是個英雄豪傑啊!”他們走了沒多遠,就看見糜竺和糜芳領著一隊士兵簇擁著一輛小車過來,車中坐著的正是諸葛亮。關羽和張飛立刻下馬,跪拜在車前。不一會兒,劉備、趙雲、劉封、關平等人也陸續到達,大家集合軍隊,把繳獲的糧草和軍用物資分賞給將士們,然後班師回新野。新野的百姓看到他們的軍隊回來,紛紛望塵遮道,向他們行拜禮,說:“我們能夠保全性命,都是因為使君您得到了賢人的幫助啊!”
諸葛亮回到縣裡後,對劉備說:“雖然夏侯惇被打敗了,但曹操一定會親自率領大軍前來。”劉備聽後有些擔憂,問道:“那我們應該怎麼辦呢?”諸葛亮回答說:“我有一計,可以抵擋曹軍。”