李世民虽然年轻,但有见识,胆量过人。他看到隋王室正处于混乱之中,就暗中怀有要安定天下的抱负。
晋阳令刘文静因犯有与李密通婚的罪,被关在太原的监狱里。刘文静是朝廷命官,李密是瓦岗起义军的首领,相互通婚,自然为法律所不容。有一次,李世民去探望他。刘文静说:“天下大乱,没有汉高祖、汉光武帝那样的才能是不能安定天下的。”李世民说:“怎么知道没有这样的人?只是人们看不出来罢了。我来探望您,不是出于儿女情长,而是打算和您商量大事。你有什么谋划吗?”刘文静说:“如今皇上到南方巡游江、淮,李密的包围逼近东都,群盗大概得以万来计算。在这个时候,若有真天子驱使驾御这些人,夺取天下易如反掌。太原百姓为躲避盗贼都搬入城内,我做了几年县令,了解其中的豪杰之士,一旦把他们收拢来,可得到十万人。您父亲所率领的军队又有几万人,一言出口,谁敢不服从!以此兵力乘虚入关,号令天下,不过半年,帝王之业就可以成功。”李世民笑道:“你的话正合我的心意。”于是,他就暗中布署宾客。李渊不知道这些事。李世民怕李渊不答应,犹豫了很久,不敢向李渊说。
李渊与一个叫裴寂的人有旧谊,两人常常在一起宴饮交谈,有时昼夜相连。刘文静想让裴寂向李渊说通关节,于是就引见李世民与裴寂结交。李世民拿出自己的几百万私房钱,让龙山令高斌廉与裴寂玩赌,渐渐输给裴寂,裴寂非常高兴,由此每天和世民在一起交游往来,情谊日深。李世民把自己的意图告诉裴寂,裴寂许诺劝说李渊。
大业十二年十二月,突厥人侵犯马邑。李渊奉命派副留守高君雅率兵与马邑太守王仁恭同力抗击。王仁恭、高君雅与突厥交战不利,李渊怕一起被治罪,非常忧虑。李世民乘机秘密地对李渊说:“如今主上昏庸无道,百姓困顿贫穷,晋阳城外都成了战场,大人要是恪守小节,下有流寇盗贼,上有严刑峻法,您的危亡就要来到了,不如顺应民心,兴起义兵,转祸为福,这是上天授予的时机!”
实际上,类似李世民这样的意思,早几年就有人向李渊提过。据《旧唐书?宇文士及传》载:渊与士及“往在涿郡,尝夜中密论时事。”李渊在涿郡的时间,当为大业九年正月,也就是说,此前四年左右,宇文士及就和李渊密谈过取天下之事。李渊任河东讨捕使时,善于占卜天象以及相面的副手夏侯端曾对他说:“如今玉床星座摇动,帝座星不安定,岁星居参宿的位置,必有真人起于晋地。不是您还能是谁呢?主上猜忌残忍,尤其猜忌诸李姓,李金才已经死了,您不想着变通,必然是李金才第二呵。”当时民间曾传诵一首叫《挑李亲》的歌谣,隋炀帝疑李氏有受命之符,故诛右骁卫大将军李金才,连及李氏一家三十余口。到李渊留守晋阳时,鹰扬府司马许世绪劝说李渊:“您的姓氏应在图谶上,名字应验歌谣,您手握五郡之兵,身处四面应战之地,起兵举事则可成帝业,端坐不动则指日可亡,您好好想一想吧!”还有一些人也劝说李渊起兵。
尽管如此,听了李世民的话语,善于掩饰自己的李渊还是假装大吃一惊,说:“你怎么说这种话,我现在就把你抓起来向县官告发。”说着就取来纸笔,要写状表。李世民慢慢地说:“我观察天时人事到了如此地步,才敢说这样的话。如果一定要告发我,我不敢辞死。”李渊说:“我哪会忍心告发你,你要谨慎,不要随便说。”第二天,李世民又劝李渊:“如今盗贼日益增多,遍布天下,大人受诏讨贼,可贼讨尽了吗?总而言之,最后还是不免获罪。而且世人都传说李氏当应验图谶,所以李金才无罪却在一个早晨被灭族了。大人要是能将贼剿灭尽,那么功高也不会受奖,而您自己会更危险了啊!只有昨天的话可以使您避祸,这是万全之策,希望大人不要疑虑。”李渊叹息说:“我一夜都在考虑你的话,你说的很是有理,今天就是家破人亡也由你,变家为国也由你啦!”
果然不出李世民所料,没过几天,隋炀帝以李渊和王仁恭不能抵御突厥的进犯为罪,派使者来要将他们押往江都。李渊大为恐惧,李世民与裴寂又乘机劝说李渊:“如今主上昏聩,国家动乱,为隋朝尽忠没有好处,本来是将佐们出战失利,却牵连到您,事情已经迫在眉睫,应该早些定大计。况且晋阳军队兵强马壮,宫监积蓄的军资财物巨万,以此起兵,还怕不成功吗?代王年幼,关中豪杰风起造反,但不知归属于谁,您要是大张旗鼓地向西进军,招抚他们并且使他们归附,这就如探囊取物一样容易。为什么要受一个使者的监禁,坐等被杀戮呢?”李渊认为这话很对,就秘密布置准备。将要举事时,隋炀帝又颁令不再追究李渊和王仁恭。这样,李渊他们起兵的计划也就缓行了。
根据这种情况,刘文静急切地对裴寂说:“先发制人,后发制于人,您为何不早劝唐公起兵,却推迟拖延不已……您死也就罢了,为什么要误了唐公呢?”裴寂极为恐惧,屡次催促李渊起兵。李渊就指使刘文静假造诏令:“发太原、西河、雁门、马邑人年二十已上五十已下悉为兵,期以岁暮集涿郡,将伐辽东。”于是,“人情大扰,思乱者益众。”这是李渊打着皇帝的合法旗号,名为“伐辽东”,实际上是在鼓动人心,为自己起兵集结队伍。到了大业十三年二月,马邑人刘武周起兵,杀太守王仁恭,三月又引突厥直逼太原。这时,李世民催促父亲快快起兵,说:“大人身为留守,而盗贼窃据离宫,如果不早定大计,灾祸今天就要到来了。”于是,李渊以讨伐刘武周为由,召集诸将佐会议,提出自行募兵。负有监视李渊行动使命的副留守王威和高君雅,迫于非常形势,只好同意,同时,也委婉地提醒李渊,募兵是为了对付刘武周,要跟隋王朝休戚与共,决不可另有图谋。既已同意,李渊就命令李世民与刘文静、长孙顺德、刘弘基等人各自募兵。远近的百姓投奔汇集,十天之内有近万人应募。这支队伍是李渊、李世民父子私自控制和直接指挥的,成为晋阳起兵的主力军。
就在李渊、李世民父子加快军事部署的步伐时,副留守王威和高君雅眼看募兵云集,怀疑李渊有异志,便暗中策划晋祠祈雨大会。晋祠位于今太原市西南25公里的悬瓮山下。王威、高君雅想把李渊诱骗到这里,加以杀害。这个阴谋恰好被经常出入于王、高家的晋阳乡长刘世龙了解,刘立即将此事报告给李渊父子。李渊和世民、刘文静等商量后,决定先发制人。5月14日夜里,李渊派李世民率兵埋伏在晋阳宫城的外面。5月15日的早晨,李渊和王威、高君雅坐在一起处理政务,这时,只见刘文静引着开阳府司马刘政会进来立在厅堂上,声称“有密状,知人欲反。”李渊故意叫王威先看,刘政会却不给,说:“告发的是副留守的事,只有唐公才能看。”李渊佯作吃惊地说:“难道有这样的事?”他看了状子才说:“王威、高君雅暗中勾引突厥入侵。”高君雅捋起衣袖大骂道:“这是造反的人要杀我。”这时,李世民已经在大路上布满了军队。高君雅还想争辩,刘文静一声令下,埋伏在后面的长孙顺德、刘弘基等一跃而出,将王、高抓起来投进监狱。正在这时,恰逢突厥数万骑兵入侵太原,其轻骑从外城北门进入,从东门出去。李渊命令裴寂等人率兵防备,而把各城门都打开,突厥人不知虚实,不敢进入。由于如此巧合,大家都以为确实是王威、高君雅把突厥人招来的,李渊便“名正言顺”地把他俩杀掉了。这就是著名的晋阳宫事变,它标志着李渊、李世民父子公开起兵了。