最主要的原因就是内部阶级矛盾剧烈,谁都想抢功劳,导致隋炀帝只能将调兵遣将的权力收到自己的手中,什么事情都得先汇报给杨广,因此贻误了战机。东征失败激起了民愤,间接导致了隋朝的灭亡。
隋朝内部阶级矛盾十分激烈当时隋朝内部被分割为了两派,一派是关陇集团,而另一派则是江南士族。隋朝的天下是靠关陇集团打下来的,但是建国之后,关陇集团也成为威胁皇权的最主要因素。所以朝廷开始着手于削弱关陇集团的实力,扶持江南士族,让这两个阵营的实力保持相对制衡。
在这种情况下,两个阵营直接的矛盾便会被迅速激化,双方谁也不服谁。来护儿就是为了抢功劳才不跟其他水军会合,最终导致隋军损失惨重。隋炀帝就是千防万防,也防不了猪队友送人头。隋炀帝第二次东征的时候,也是因为杨玄感造反,导致东征不得不被迫暂停,所以东征失败真的跟朝廷内部的阶级矛盾密不可分。
隋炀帝战术出错为了应对上述出现的阶级矛盾,隋炀帝下令将军用兵都得经过他批准,直接导致了隋军包围了辽东城一个多月,却没有丝毫进展,因为前线一直在等待杨广的指示。高句丽显然也看出了隋军的破绽,于是今天说投降,明天又不投降,又要开战了,这一来一回,隋军可是被耍得团团转。
隋军没有在短时间内消灭高句丽,导致战事拖延,国内的老百姓都怨声载道,因为军粮等后勤补给说到底还是从老百姓那里搜刮来的。杨广穷兵黩武,彻底地激发了老百姓的怒火,国内爆发了大规模的农民起义。杨广无法同时兼顾两边的战事,只能匆匆撤军,回来镇压农民。