六月三日,李世民把一切都布置好了,便開始實行計劃的第二步,密奏李建成與李元吉的罪行,說他們“淫亂”後宮,並且告發他們想謀害自己,就像李世民自己所說:“臣於兄弟無絲毫負,今欲殺臣,似為世充、建德報仇。臣今枉死,永違君親,魂歸地下,實恥見諸賊。”為什麼說李建成“似為世充、建德報仇”呢?李世民無非是表白自己隻是因平叛之功而被猜忌,這樣就可以把相互殘殺的責任全部推到李建成與李元吉的身上了。這些隻不過是計劃中的一部分,無非是想把李建成和李元吉引到玄武門,以便下一步計劃的執行。李淵聽後,感到特別不解,想第二天問個清楚。這正中李世民的下懷。
六月四日,李淵先召集裴寂、蕭瑀、陳叔達等人一起商量,看如何處理此事。三個兒子來到之前,李淵和大臣們一直在太極宮中劃船商議,他們以為又是兄弟在鬧矛盾,便討論如何勸解協調。他們當然不會預料到事態的嚴重性。他們更不會清楚李世民早已經在玄武門布置好人馬,常何率領長孫無忌、尉遲敬德、侯君集,張公謹、劉師立、公孫武達、獨孤彥雲、杜君綽、鄭仁泰、李孟嚐等10人埋伏在玄武門,正等著斬殺建成與元吉。
唐高祖李淵的愛妃張婕妤一直是支持李建成的,她在玄武門也有眼線。李世民將要采取行動的消息被告訴了張婕妤,張婕妤立刻向李建成報告。李建成得到密報後,馬上找李元吉商量對策。李元吉認為:“宜勒宮府兵,托疾不朝,以觀形勢。”
而李建成卻認為:“兵備已嚴,當與弟入參,自問消息。”看來,“兵備已嚴”是事實,李建成早就對京城的軍事力量私自作了準備,而且以為舊屬常何在玄武門,不會發生什麼問題。所以,李建成沒有采取必要的應急措施。李建成過於自信,對屬下叛變之事竟然一無所知,就和李元吉一道入朝。行至臨湖殿,覺得有點反常,立即掉轉馬頭向東宮奔去。李世民和諸將緊追不舍,李元吉本是一位勇士,想回頭把李世民射下馬來,但在驚慌之下,沒有把弓拉滿,射不中李世民。李世民追到近前,一箭射死李建成。尉遲敬德帶領70騎奔馳而來,射傷了李元吉,傷勢不重,李元吉拚命往武德殿逃,被尉遲敬德趕到射死。
過一會兒,東宮和齊王府的精兵兩千人由李建成的僚屬馮立、薛萬徹、謝叔方率領,結陣猛攻玄武門,與秦王府的將領展開激烈的戰鬥。由於張公謹閉關拒之,東宮的人攻不進去。玄武門屯營將領敬君弘與呂世衡早已被李世民所收買,這時奮不顧身,打開北門迎戰,被東宮的軍隊包圍,大家奮力拚殺,但敵人眾多,不能衝出,直至戰死。
正當戰鬥激烈進行的時候,李世民的妻子長孫氏把將士領入宮中親自給披上鎧甲,並問候是否受傷,給受傷的士兵進行包紮,大家對長孫氏非常感激。長孫氏的舅舅高士廉看到敵人非常凶猛,趕快帶領吏卒把綁著的囚犯全部釋放,並且發給他們兵器和鎧甲,和李世民一起進行防守。在秦府僚屬和囚犯的全力抗擊下,玄武門始終掌握在李世民手裏。這使東宮的軍隊多少有些泄氣。