襄阳（今属湖北）、虎牢、怀州（治河内，今河南沁阳）等地守御，自率步骑3万准备迎战唐军。但由于唐军势大，只好退守洛阳。李世民决定先扫清外围，然后攻城。于是令行军总管史万宝自宜阳（今宜阳西）进据龙门（今洛阳南），潞州行军总管刘德威自太行进围河内，右武卫将军王君廓至洛口（今巩县东北）断敌粮道，怀州总管黄君汉自河阴（今孟津东北）袭破回洛城（今偃师北），自率主力屯于北邙山（今洛阳北），连营进逼洛阳，待机攻城。八月黄君汉遣校尉张夜义，夜里以水军从孝水河而下，攻克回洛城。武德四年（621年）五月初二，李世民击破窦建德