程昱獻出計策,說:“關羽是萬人敵,隻能靠車輪戰法。”曹操讚同。第二天,夏侯惇領兵去挑戰,關羽帶兵出城,跟夏侯惇交戰。打了十幾回合,夏侯惇撥馬就走。關羽一直追去,追了二十多裏,怕下邳城有閃失,於是掉頭往回跑。這時候,一聲炮響,左有徐晃、右有許褚,兩軍攔住去路。關羽奮力殺退二將。剛要帶兵回下邳,夏侯惇又截住去路。關羽打到了晚上,隻得到一座土山上,暫時休息。曹兵把土山團團圍住。關羽帶兵幾次突圍,都被亂箭射住,不能前進。這時候,就見一馬跑上山來,一看是張遼。

關羽對張遼說:“文遠來是要交戰嗎?”張遼說:“不是,我是你的朋友,特來看看你。”於是棄刀下馬,向關羽施禮,倆人坐在山頂說話。張遼說道:現在曹操已經派兵奪取了下邳,城中有劉備的兩位夫人,都被曹操派兵保護好了,特來告訴兄長。關羽生氣地說:“你這話就是勸我投降的。我雖然身處死地,但是視死如歸。你快回去,我這就下山迎戰。”

張遼說:“兄長這樣死了,但兩位夫人沒了依賴,這就對不起劉使君的托付啊。兄長武藝超群,又熟讀經書,不想著幫扶漢室,卻隻知道拚命,這隻是匹夫之勇啊。”關羽沉思了一下,說:“那你覺得我怎麽辦?”張遼說:“現在四麵都是曹操的軍兵,不投降就是死。兄長不如暫時投降,等以後打聽到劉備的下落,再去找他。這樣可以保全住兩位夫人。”關羽說:“那我有三個約定,能接受我就放下武器,否則寧肯戰死。”張遼說:“哪三個約定。”關羽說:“第一,我和劉備從前發誓,共扶漢室,所以我隻降漢帝,不降曹操。第二,需要把劉皇叔的俸祿發給兩位嫂子用,曹操手下各種人,都不許上門。第三,隻要知道劉皇叔的去向,不管千裏萬裏,我就要去投奔他。這三個約定,你快去回報給曹操吧。”

張遼上馬,下山去見曹操,先說了降漢不降曹的事情。曹操笑說:“我是漢朝丞相,漢就是我,這條可以接受。”張遼又說:“要把劉備的俸祿發給劉備的兩位夫人,而且外人不許上門。”曹操說:“我按劉備的俸祿,加倍給他們。”張遼又說:“他得知劉備的消息,不管多遠,他都去投奔。”曹操搖頭說:“那我留關羽有什麽用?這個不能接受。”張遼說:“劉備對關羽有情義,隻要丞相對他更有情義恩德,那還怕他不留下?”曹操說:“這有道理,那我就都同意。”

張遼上山告訴關羽以後,關羽就下山,來見曹操,說道:“敗兵之將,深荷不殺之恩。”曹操說:“我知道雲長忠義,今天一見,實在有幸。”關羽說:“關某如果知道了皇叔在哪裏,雖然赴湯蹈火,也要去找他。”曹操說:“劉備如果在,一定叫你去。就怕他已經死在亂軍之中了,你先不要著急,我派人去打聽。”關羽拜謝。隨即關羽進下邳城,把劉備的兩位夫人——甘夫人、糜夫人接上,跟著曹操的軍隊,一起回了許都。