中国古代游牧民族与农耕民族的相互较量,持续两三千年之久,为了对抗草原部落的侵袭,中原历代王朝或投入重兵,或整修长城,不遗余力地完善北方防线。大致说来,农耕民族在农牧分界线上共设置有三个防御支点,分别是幽州、大同与河套,其中幽州亦即今之北京为核心的区域,依托燕山山脉作为阻击屏障;河套主要指前套和后套,凭依横亘东西的阴山山脉;而大同盆地介于两者之间,是三个支点中缺少地理防护的一个。
古代能够作为防御支点的地区,起码要具备两个条件,一是拥有高大的山体作为地理屏障,二是拥有宽阔的纵深满足后勤供应。幽州紧贴燕山南麓,游牧民族从正北方向直击幽州就必须跨越这道天险,广阔的河北平原又能够为驻守幽州的军队提供源源不断的粮草,这也是元明清三代敢于将首都设置于此的原因之一。
至于河套的情况也大致与此相同,黄河“几字湾”最靠北的部分形成两处弯曲,河水在这里放缓,这片处在大西北的地区不用担心水源的问题。东西走向的阴山山脉为河套提供天然防护的同时,阴山与鄂尔多斯高原之间的宽阔谷地也能够产出足够的粮食以供大军食用。战国时期,赵国设置为云中郡,而李牧近对抗匈奴第一线就在这里。
对比之下,大同的优势显然不如幽州和河套,大同以西是阴山山脉的东缘,以东是燕山山脉的西缘,两条大山脉恰恰在大同这里没有完成合拢。大同多数情况下要直面游牧骑兵的攻击,古代中原王朝往往在大同以南设置第二道保险,也就是雁门关。从地图上看,大同以南的恒山山脉勉强可以作为庇护山西腹地的又一道防线,尽管恒山较之燕山和阴山要低矮许多,但聊胜于无,而雁门关正好骑跨在恒山山脉西南侧的一个山口上。
从阴山、燕山和恒山的包夹来看,大同可以视为一个半开放式的盆地,倘使没有草原骑兵的侵扰,农耕民族大可在这里占据主流。游牧部落不大可能会放弃这片“打草谷”的对象,大同盆地多数时期都是耕牧混合的生产方式。战国时期这里属于“代地”,经过“胡服骑射”后的赵国骑兵正是依托大同盆地,与来去如风的匈奴骑兵一决雌雄。赵国被秦所灭之后,公子嘉带领残存的赵国宗室到代地称王,这一时期“半农耕半游牧”的特点在代国表现得尤为突出。
由于大同盆地既没有高大的山体防护,又没有出色的供给能力,草原民族习惯将这一方向选定为突破点也就不足为奇了。事实上,相比于幽州和河套,中原王朝对大同的战略定位,更像是为雁门关争取反应时间的前沿基地,所以大同的城防工事远非一般城池可比。
以明朝为例,北伐大元帅徐达夺取大同之后,为防备北元卷土重来,下令对大同城防进行重新营造,城高14米,城墙最宽处达16米,规格甚至高于都城南京。
朱元璋对大同丢失是有切肤之痛的,后晋石敬瑭将幽云十六州割予契丹,直接导致北宋百余年无险可守,而大同正是十六州中的云州。《天龙八部》中阿朱常对乔峰说的“雁门关外,牧马放羊”,指的正是这一时期被契丹占据的大同盆地。此后,辽、金及元初三代将大同改为西京,从这里出发的北方骑兵向东可以通过燕山与太行山的结合部直插河北;向西可以沿阴山南麓夺取河套;向南可以跨雁门关深入山西腹地,进而威胁长安洛阳。
有明一代,大同始终为九边重镇之一,直到明朝灭亡,大同城也不曾被正面攻破。