李淵起兵之後,遼山縣(今山西左權東北)令高斌廉火速派人向朝廷報告。隋煬帝聽到奏報後非常恐懼,急忙下令,要洛陽、長安的官員準備防禦措施。李淵認為遼山是一座小城,攻不攻都無所謂,不會對義軍構成威脅,主要的敵人是西河郡丞高德儒,高德儒擋住了南下的道路,所以必須掃清。
李淵命令李建成、李世民兄弟率軍前去進攻西河郡(今山西汾陽)。出發的時候李淵再三勉勵他們要努力作戰,奮勇殺敵,爭取首戰勝利。並且任命太原縣令溫大有為參謀軍事協助指揮。當時的士卒都是新招募的,集中起來的時間也不太長,沒有經過太多的訓練,他們大都不熟悉戰陣,更沒有進行實戰的經驗。建成、世民兄弟也都是青年將領,從未單獨指揮過一支軍隊,更何況對手是隋朝的正規軍。但是“義兵”也有他有利的一麵,比如說軍紀嚴明,上下一心,士氣高昂,不像隋軍到處搶奪。這也說明了建成、世民在帶兵方麵還是很有才能的。建成、世民能與士卒同甘共苦,作戰時身先士卒,這極大地鼓舞了士兵的鬥誌,看到主帥甘冒矢石,士卒更是爭先恐後。建成、世民嚴令士兵不準騷擾百姓,如果有敢違反的,就按軍法處置。百姓的蔬菜水果,不是買來的就不能吃,看到這樣紀律嚴明的軍隊,百姓非常高興,爭相送東西慰勞。
建成、世民兄弟二人非常順利地到達了西河郡,由於一路上廣施恩德,西河郡的百姓也都早有耳聞,所以不願幫高德儒守城。建成、世民下令大軍攻城,城上的士兵不願跟義軍拚殺,有的甚至臨陣倒戈,所以,沒用多長時間就攻下了西河郡。高德儒被抓住斬首示眾,以令三軍,除此之外沒有亂殺一人,對百姓更是秋毫無犯,並且好言安撫,讓他們繼續以前的工作。建成、世民從出兵到返回太原,隻用了9天時間,李淵對這一仗感到非常滿意,他認為用這樣的軍隊奪取天下不成問題。
西河一戰之後,李淵開始設立大將軍府,建立了左三軍,任命李建成為左領軍大都督,統率左三統軍,封隴西公;建立了右三軍,任命李世民為右領軍大都督,統率右三統軍,封敦煌公。士卒稱為“義軍”。同時讓李元吉做太原郡守,留守太原,任命裴寂為大將軍府長史,劉文靜為司馬,溫大雅、殷開山、唐儉等人為大將軍府麜屬,劉弘基、長孫順德、王長階等人為統軍、副統軍。其餘文武職員,隻要有立功的,便破格提拔。這樣一來,李淵用來和各路人馬爭奪天下的軍事、政治機構就組成了,同時也把改朝換代的願望變成了實際行動。
西河一戰打得幹淨利落,充分顯示出了李世民的軍事指揮才能。這次勝利有兩個很重要的原因:一是李世民和士卒能同甘共苦,打成一片,得到大家的一致認同,士兵肯為他們賣命;二是李世民一再嚴明紀律,對百姓秋毫無犯,收買民心,徹底瓦解了隋軍,使得義軍以迅雷不及掩耳之勢攻下了河西郡。
大業十三年(公元617年)七月,李淵誓師於野,留元吉守太原,他親自率領建成、世民從太原出發。同時給李密去書一封,告訴李密說,他才是真命天子,自己應當幫助他成就帝業。
李世民說:“此書一去,李密專意圖隋,我可無後顧之憂了。”
李密得到李淵寫來的書信,果然很高興,並且回書給李淵。李淵更加放心了。
李淵率軍南下,行到賈胡堡的時候,恰好趕上天降大雨,一連幾天的大雨使道路變得泥濘不堪,無法行軍。隋朝內部已經知道李淵起兵反隋了,代王楊侑驚慌不已,急忙派隋朝虎牙狼將宋老生屯兵霍邑,用精兵兩萬阻擋“義師”。又派隋朝驍衛大將軍屈突通鎮守要地河東,以阻止李淵集團南下。