李渊起兵时,只有很小的一块地盘,而且实力也不是最强的,但他很懂得寻找根据地,从起兵的第一天起就盯住了长安。
长安,是当时世界上最大的城市。杨坚建立隋朝后,最初定都在汉长安城。但当时的长安破败狭小,水污染严重,于是决定在东南方向的龙首原南坡另建一座新城。开皇二年(582年)起,在宇文恺的主持下,仅用九个月左右的时间就建成了宫城和皇城。之后,隋王朝迁至新都,因为隋文帝早年曾被封为大兴公,便以“大兴”命名。杨广继位后,陆续开凿南北大运河,以水路连接大兴城。又动用十余万人在宫城和皇城以外建造了外郭城,城市的总体格局至此基本形成。这里人口多,山势险,加上有钱有兵,以及有不少良将。
那么,李渊为何敢打大隋国都的主意?主要还是看清当时农民起义拖垮了隋朝统治,牵制隋军大量兵力,使统治集团无力西顾,关中空虚,不能和新兴的李渊集团抗衡。在攻取长安的过程中,李渊父子巧妙运用战术,如与关东李密联合,拖住隋军,使其无暇西顾,入关后随即屯兵潼关,阻住隋朝援军。
此外,攻打河东与进军长安同时进行,一举解决后顾之忧。长安失陷后,屈突通看到隋朝大势已去,开城投降了李渊。加上李唐大军途中秋毫无犯,得到关中地主阶级支持,阻力大为减少,因而能够自太原起兵到攻克长安,只有短短的五个月时间。
之后,更是趁势进军关中。关中指中国陕西秦岭北麓渭河冲积平原,平均海拔约五百米,又称关中平原,其北部为陕北黄土高原,向南则是陕南山地、秦巴山脉,为陕西的工、农业发达,人口密集地区,富庶之地,号称"八百里秦川"。