隋朝末年,隋炀帝穷兵黩武,四方征战。公元612年,隋炀帝率三十余万人马远征高丽,结果一败涂地,退回长安时,仅剩下两千余人。隋炀帝不但不汲取教训,反而又在全国征招了数十万人马,再次远离京城,讨伐高丽。
隋炀帝的一意孤行惹起天下百姓的怨恨。督运粮草的礼部尚书杨玄感平时就对隋炀帝不满,于是乘机起兵造反,挥师直取东都洛阳。杨玄感的队伍迅速扩大到十万余人,但在西部的代王杨侑听说东部危机,连忙发四万精兵前去救援;远征高丽的隋炀帝得知杨玄感造反也急忙回师驰援;屯兵东莱准备渡海进攻高丽的隋将来护儿也率兵回救洛阳。
杨玄感急召好友李密和大将李子雄商议道:“东都援军越来越多,我军处境不妙,二位有何高见?”
李密和李子雄建议说:“洛阳城固兵多,一时攻打不下,如果我们直取潼关,进入关中,开永丰仓赈济百姓,赢得人心,以关中为落脚之地,再伺机东向,争夺天下,未为不可。”
杨玄感认为二人说的有理,立即撤去洛阳之围,率大军向潼关疾进。
弘农(今河南陕县)是杨玄感大军取潼关的必经之路。弘农太守杨智积对属下说:“杨玄感被迫放弃洛阳是因为我方援军即将赶到。如果让他进入关中,以后的胜败就很难预料了,我们应该把他们滞留在这里,待援军来到,一举消灭他们!”
杨玄感率大军经过弘农时,准备绕城而过,突然,杨智积高高站立在城头,对着杨玄感破口大骂,语言污秽之极,不堪入耳。杨玄感勃然大怒,立即命令大军停止前进,将弘农城团团包围起来。
李密苦苦相劝:“追兵即在身后,此城非逗留之地,小不忍则乱大谋,将军当三思而行!”
杨玄感道:“量一小小城池,能奈我何?待我捉住杨智积匹夫,以泄我心头之恨!”
杨玄感下令攻城。不料,杨智积早有防备,任凭杨玄感火攻也好,强攻也好,弘农城就是岿然不动。一连三天过去,城未攻克,探马向他飞报:“追兵已经接近弘农!”杨玄感大吃一惊,这才慌忙撤去包围,向潼关进军。
但是,一切都为时太晚。隋炀帝的大军在潼关外追上了杨玄感。杨玄感连战连败,在逃往上洛(今陕西商县)的途中,连战马也倒毙了,余卒尽散,只剩下他和兄弟杨积善两个人。杨玄感又悔又恨,对兄弟说:“我因一念之差,不能采纳忠言,兵败至此,再无脸面见人。你把我杀死吧!”
杨积善举剑杀死哥哥,然后自刎。