原因其实很直白。
第一,古代很多战争就是以攻城掠地为目的。既然如此,遇到城市你就绕过去,那你干嘛来了。
第二,更重要的。你过去了,城里的人也不会闲着,你过去了他出来骚扰你后军以及补给线了。最典型的,后金军为什么在宁远小城和袁崇焕死磕?因为你敢过去,他就敢出来背后打你。所以有些城市不破不行。
第三,古代辎重部队没办法走太艰难的路据说当年的八十80万大军通常是军队加明夫的数量,真正参与战斗的也就十几万,军队和后勤人员保持着一比四到一比五的比例。你精锐部队可以翻山越岭过去,你让推着推车赶着马车的民夫怎么过去?
第四,游牧民族该绕能绕的时候已经绕过了,没有客气
如果是战略要地,不得不争夺的话,就得争了。如果不是战略要地,就没必要死磕,比如辽沈之战,绕过长春直接打锦州。再比如朱棣的靖难战争,打不下来山东直接从徐州绕路,直下灵璧。