公元前215年,秦始皇命大将蒙恬带领三十万大军去抵抗匈奴的进攻。在今山西北部进行纵深布防,朔县就是当时蒙恬筑城养马的地方,故名马邑城(在今朔县城西北隅)。大同云岗附近的武周塞,也是秦人筑垒以备胡的地方。第二年,蒙恬击败匈奴,收复河南地(今黄河河套一带地区)置九原郡(治在今内蒙古包头西),设了四十四个县。为了防御匈奴的侵犯,秦始皇把原来燕、赵、秦三国北方的城墙连接起来,修筑长城,西起临洮(今甘肃岷县),顺黄河北至河套,傍阴山东至辽东(今辽阳西北),世称万里长城,这一宏伟建筑,后来成了我们中华民族古老悠久历史的象征。蒙恬统率大军镇守上郡(治今陕西榆林东南),主要防线包括今山西北部、內蒙古中部和陕、甘、宁边缘地区。秦王朝用这些措施,保卫了北部边疆的安全。

秦汉时期,从咸阳和洛阳出发,经太原北上,穿雁门,过马邑,越武周塞,可直达匈奴龙庭(今呼和浩特附近),这就是史称“通塞中路”的“驰道”。秦始皇第六次出巡,巡幸北边六郡,走的就是这条大道。两年后,他在第七次出巡途中死去,次子胡亥为争夺皇位,与赵高、李斯合谋,拉着秦始皇的尸体,从沙丘平台(今河北省平乡)经太原,过雁门绕九原郡(今内蒙包头市附近)返回咸阳,并逼杀公子扶苏。秦始皇两过太原,竟是一生一死!

秦始皇为抗击匈奴,建造万里长城,发兵三十万,征集民夫多达数十万;为了开发南方,又动员了军民三十余万。此外,还用七十万囚犯建造规模巨大的阿房宫。到了秦二世即位,又从各地征调了几十万因犯和民夫,修建十分巨大的秦始皇的陵墓,陵墓没完工,又开工复建阿房宫。那时候全中国人口不过二干万,被征兵和服劳役的就差不多有二、三百万人,以致劳民伤财,怨声载道,民不聊生。

在这种社会矛盾激化的情况下,公元前209年七月戍卒陈胜、吴广因失期当斩,率领同被征发者九百人,在蕲县大泽乡(今安徽宿县东南)起义反秦。同年九月,刘邦与县吏萧何、曹参、狗屠樊哙,吹鼓手周勃等人在沛县(今徐州附近的江苏沛县)举行反秦起义,称为沛公。与此同时,项梁(楚将项燕之子)、项羽(项梁的侄子)率八千人起义于吴(今苏州市)。其他地方也纷纷“揭竿而起”公元前207年,刘邦、项羽先后攻入关中,统一中原十五年的秦王朝灭亡。自此又进入了楚汉相争阶段。

公元前205年,魏王豹反汉,刘邦命韩信北渡黄河袭破安邑(今山西夏县西北),俘虏了豹,进而平定了今山西大半颔土,设置了河东(晋南)、上党(晋东南)、太原(晋中)三郡。汉王刘邦又命张耳与韩信从今晋中一带出发,攻略赵、燕。公元前204年,韩信率汉军由今平定、娘子关和固关一线东出井陉口,“破金沉舟、背水一战”,出奇兵袭击赵营,大破赵军,斩陈余、擒赵歇与广武军李左车。此后,韩信又用李左车的计策,招降了燕地。至此,今华北大部均为汉地。