李渊的这个重要战略决策,对李渊的发展,有着决定性的影响,首先李渊刚刚起兵,军心士气还不巩固,如果遇挫折而退兵,必然会陷于瓦解不可复振。再者关中战略地位重要,而且当时空虚,图之者还大有人在,关西的薛举也意图关中长安,还有差不多就在李渊起兵同时,柴孝和就曾劝李密舍掉洛阳入关中,以图天下,李密没有采纳,但时间一久,变化就不可知了,所以必须趁机,捷足先登。如果李渊没有改变他自己退兵的决定,李洲可能会像李密一样最后对关中无能无力,从而丢失争霸天下的根本。
八月,大雨停止了,回军的李渊率骑兵沿小路奔霍邑,宋老生守城不出。李渊无奈就派李建成、李世民率领几十骑到城下辱骂宋老生,同时自己率领骑兵在城东埋伏。宋老生乃率众三万自东门、南门分道而出。李渊这时即同李建成左军结阵于东门,令李世民右军结阵于南门,以断宋老生的逃路。成阵之后,又怕宋军背城不肯远战,乃命令军队向后收缩,伪作退避宋军模样。宋老生果然认为李渊畏缩,在距离城一里余地方布阵。不久李渊的后续部队来到,李渊想命部队就食后再战,李世民认为,“时不可失”,遂发动了的进攻。一交锋,李渊、李建成在城东的阵势不利,便向后引退,李世民发现宋老生大军侧背暴露,即引兵自城南直冲宋老生军阵后,并扬言已俘虏宋老生,隋军大溃败,李渊得以迅速占领了霍邑。
李渊在攻占霍邑之后,乘胜连下临汾、绛郡(山西新绛),进逼龙门。关中势力最大的一支农民义军孙华和冯翊(陕西大荔)太守萧造投降李渊。李渊于是一方面率主力围攻河东,另一方面派王长谐等率一部分兵力在孙华的协助下渡过黄河,在河西设营,造成了对河东围攻的有利形势。
由于屈突通在河东凭坚城固守,李渊大军主力没有进展,李渊便想绕过河东直趋长安。这时,裴寂认为:屈突通兵力不小,凭坚以守,若舍之而去,如果攻长安不下,退为河东所乘,“腹背受敌”很危险,应该先打下河东再前进。而次子李世民和裴寂的意见再次不同,他认为:“兵贵神速”,应该乘势迅速入关,则长安震惊。“智不及谋,勇不及断”,攻取很容易。否则,顿兵坚城,空耗日月,长安就能从容以备我,成功就难了。于是李渊就以一部兵力继续围攻河东,自己率主力渡河入关。
过河后,李渊命李建成、刘文静等率军数万人向南迂回,占领永丰,扼守潼关,以戒备东方;命李世民、刘弘基等率军数万人,向渭水北岸进军,控制长安外围各要点,然后攻占长安。而李渊自己则控制一部兵力在朝邑,指挥各方向作战。
李渊大军渡过黄河后,声威所至,隋朝官吏纷纷投降。华阴令李孝常献永丰仓投降,使李建成等得以顺利地占领永丰仓。李世民所到之处,收编隋军和各小部分起义军,短期内“胜兵九万”设营在泾阳,并派刘弘基攻取了扶风,渡过渭水,屯军在长安故城。原在关中地区的李渊亲族,如其女李氏,婿段纶,族弟李神通等,也响应李渊起兵,并与长安附近各小部分起义军会合,占领了兰田、盏屋、武功、始平等地,人数到了十余万人,皆统一归李世民指挥。
李渊渡河以后,先在朝邑,以后进到冯翊。见攻取长安的时机已经成熟,乃命李建成率精兵自永丰仓经新丰(陕西临潼)到长乐宫(长安东北)与李世民所部完成了对长安的包围。此时,陕北各郡县也纷纷请降。
十月,李渊率军自冯翊到长安东北,各军会合,实力发展到几十万人。十一月,李渊汇合李建成、李世民、刘弘基之兵20余万攻打长安。进攻长安前,李渊下令不许侵犯隋朝七庙和代王宗室,违令者夷其三族,遂命诸军攻城,军头雷永吉率先登上城头,京城长安很快被李渊攻克。