日军第一军于十日占领河北省石家庄后,令第二十师团沿正太铁路(正定至太原)向山西进攻,以配合由晋北南下的日军会攻太原。
中国第二战区部队一部,在副司令长官黄绍竑指挥下,在娘子关南北地区布防阻击日军的进攻。日军第二十师团一部,在师团长川岸文三郎指挥下分两个纵队西进。右纵队沿井陉、娘子关向石门口进攻,左纵队沿微水、测渔镇向石门口进攻。
十一日,日军进到井陉与在此警戒的中国军队一部接触。黄绍竑急令右翼第三军向娘子关靠拢,主力集结于大小梁江。
十二日晚,日军突破井陉南刘家沟守军阵地,占领井陉。
十三日晨攻占旧关,当日夜,中国第十七师所部向长生口方向日军反击,曾克复刘家沟、长生口和井陉南关车站,但因娘子关以东雪花山失守,第十七师反攻未逞,退守乏驴岭。
十四日拂晓,第二十六路军第二十七师两个团向占领旧关的日军反击,将该部日军压缩到核桃园东南高地。当日,日军一部由娘子关以北洪子店西进,在六岭关附近被守军第四旅击退。
这时,阎锡山限令黄绍竑和第三军军长曾万钟于十六日消灭旧关附近日军。当日夜,第二十七师和第三军一部将关沟和旧关的日军包围。日军一部增援。双方展开激战,至二十日,形成对峙。
日军华北方面军司令官寺内寿一于二十日,令第二十师团向阳泉地区进攻。当日,第二十师团以右纵队攻击井陉、新关、固驿镇方面及以北的守军防御阵线;以左纵队沿横口、测鱼镇、固驿镇向娘子关正面守军后方迂回。
当日拂晓,日军右纵队在飞机支援下向娘子关正面守军展开攻击,战至二十二日,守军伤亡极重,即缩短战线于当日夜间转移至神仙洞、绵山、苇泽关、七八五点三高地、宋家岩底一线阵地。
这时,日军已迂回到娘子关正面守军的右后侧。黄绍竑请示阎锡山后,将娘子关一线守军主力后撤。