法國戰役 “黃色行動”作戰
克萊斯特裝甲兵團向沿海开辟的走廊十分狹窄，其北部有3個輕機械化師和英國遠征軍，在南方則有戴高樂的第4裝甲師。然而法军指挥变动造成的盟军行动延迟为德军带来了机会，德国的步兵师得以有足够的时间跟进装甲部队的进度，并巩固装甲部队开辟的走廊；而德军的坦克也在此期间进一步沿海岸推进。5月21日，魏刚乘飞机进入北方包围圈，会见第1集团军司令比洛特上将和比利时国王利奥波德三世。利奥波德三世声称比利时军队缺乏坦克和飞机，无法执行反击；此外，利奥波德三世称比利时未被占据的地区仅剩两周的食物。利奥波德三世并不指望英国远征军冒着自身危险保持和比利时陆军的联系，但是警告称如果英国远征军执意向南反击，比利时军队将会崩溃。利奥波德三世提议建立一个覆盖敦刻尔克和英吉利海峡上比利时港口的滩头阵地。
5月23日，比洛特因交通事故身亡。比洛特是北部盟军中唯一了解魏刚计划概略的指挥官，他的死导致第1集团军足有3天无人指挥。英国远征军司令戈特勋爵此前已在质疑法军是否能够最终胜利；同在5月23日，英军决定从海峡港口撤退。盟军只发动了两场局部攻势：英军于5月21日在北部向阿拉斯发起攻击，此后法军于5月22日在南部向康布雷发动攻势，但英法双方均不了解对方的攻击行动。英军哈羅德·愛德華·富蘭克林少将指挥的“弗兰克部”（Frankforce）包含两个师——第5步兵师和第50“诺森布里亚”步兵师，部队的侧翼由法国第3轻机械化师保护。进入了阿拉斯地区后，富兰克林假定自己部队的任务是解救该地的盟军驻军，并切断该地德军的联络线；他拒绝将属下的两个师和侧翼的法国师全部投入一场目标有限的攻势中。富兰克林在主攻中只投入了两个英国步兵营、第1坦克旅属下两个营的58辆玛蒂尔达I型坦克和16辆玛蒂尔达I型坦克、外加一支附属的摩托车营。
英军在阿拉斯战役实现了进攻的突然性，在最初阶段对过于分散的德军部队取得了胜利，但最终仍未能实现目标。盟军坦克和步兵之间的无线电通信很糟糕，几乎没有像德军那样的兵种协同。德军以88毫米高射炮和105毫米榴弹炮予以还击，最终阻止了盟军攻势。法军部队在撤出战场时击毁了多辆德军坦克，但德国空军瓦解了盟军反攻，让英军损失了60辆坦克。法国第5军团因为过于缺乏组织，在南部对康布雷发动的攻势同样宣告失败。
盟军的进攻让德军最高统帅部惊慌失措，他們以為幾百輛盟軍坦克馬上就要碾碎他們的精銳部隊了；但隆美尔希望继续追击盟军部队。5月22日早，终于镇定下来的最高统帅部下令第19装甲军向北挺进，从阿布维尔向海港进军：第1装甲师攻加来、第2装甲师攻布洛涅、第10装甲师攻敦刻尔克。后来第1装甲师和第10装甲师交换了进攻目标。英法两军于5月27日到6月4日发动阿布維爾戰役，但未能消灭德军在索姆河南岸的桥头堡。
5月23日凌晨，戈特勛爵下令從阿拉斯撤退。到此時刻，他對魏剛的突圍計劃已經沒有信心了；魏剛建議至少試圖堅守在法蘭德斯海岸的防守圈，即所謂的“法蘭德斯内堡”（Réduit de Flandres），但戈特勛爵對此同樣不抱期待。戈特勛爵知道給這樣一個據點提供後勤的港口已遭到威脅。同日，德國第2裝甲師已攻佔了布洛涅海岸。在布洛涅海岸的英國守軍於5月25日投降，有4,368名士兵被皇家海軍在皇家空軍掩護下撤出。
5月24日，斐迪南·沙爾率德國第10裝甲師開始進攻加萊。英軍由第30摩托化旅以及配備巡航戰車的第3皇家坦克團支援，這兩支援軍在德軍進攻前24小時匆匆登陸。英法兩國的守軍意識到早早投降會讓允許德軍向敦刻爾克進軍，因此盡可能久地堅守加來的港口。儘管沙爾的部隊奮力進攻試圖突破，英法兩軍仍舊守住了加來城。古德里安下令如果5月26日14:00時沙爾還不能攻占加來，他將撤下第10裝甲師，用空軍摧毀該城。英法兩軍最終耗盡了彈藥，德軍得以在26日13:30進入加來城。法軍的主要工事已經投降，而英軍仍在港口堅守至27日清晨。約有440人最終撤離。加來圍城戰拖延了德軍4天的進度，但盟軍爲之付出了慘痛的代價，傷亡約占全部人員的60%.
德国军事史学家卡尔-海因茨·弗里泽在著作《闪电战的迷思：1940年西线战役》（Blitzkrieg-Legende: Der Westfeldzug 1940, Operationen des Zweiten Weltkrieges）中写道，英法两军在阿拉斯战役中发动反击，对德军造成了与实际后果不成比例的后续影响。克莱斯特感到了“严重的威胁”，后来告知哈尔德他必须等到危机解除才能继续进军。第4军团司令克鲁格大将在伦德施泰特的支持下下令坦克停止前进。伦德施泰特在5月22日德军击退盟军时命令，在克莱斯特装甲兵团向布洛涅和加来进军前必须恢复阿拉斯的局势。最高统帅部的恐慌情绪更为糟糕，希特勒于5月22日联络A集团军，下令所有机动部队在阿拉斯两侧行动，而步兵部队向东侧行动。
在德军前线的高级参谋之间，危机并不明显。哈尔德得到了和古德里安一致的结论，认为德军面临的真正威胁是盟军将会快速撤退至海岸，于是德军开始了和盟军争夺港口的作战。英国远征军和法国第1军团的大部分部队距海岸仍有100公里，但从英国本土派往加来和布洛涅的援军及时到达，刚刚好能够在5月22日拖延德国第19军的进攻。弗里泽认为，如果德军在5月21日没有停止前进24小时，而是以5月20日的速度继续前进的话，布洛涅和加来将会早早沦陷。而如果德军没有在5月15日（蒙科尔内战役）和5月21日（阿拉斯战役）两次停止进军的话，第10装甲师将能提前占领敦刻尔克，也就不可能会有5月24日的中止进军命令和随后的盟军大撤退。
5月23日，伦德施泰特听取了第4军团司令克鲁格大将的建议，下令装甲部队停止前进。伦德施泰特仍在担忧侧翼的安全和前线部队的补给，并希望保存装甲部队实力用于将来对法国南方的进攻；此外，伦德施泰特还认为敦刻尔克周围的沼泽地形不适合坦克作战。5月24日，希特勒造访了伦德施泰特位于沙勒维尔的总部，对停止进军的命令表示同意。伦德施泰特进一步提出应当用步兵消除阿拉斯英军的威胁，而克莱斯特的装甲兵团应当维持敦刻尔克附近的战线。德国空军司令赫尔曼·戈林则请命用空军摧毁敦刻尔克的盟军部队。当天中午，伦德施泰特以希特勒的名义再次命令装甲部队停止前进。晚些时候，希特勒签署了特别训令第13号，要求德国空军摧毁被包围的盟军，阻止他们逃走。
史学界至今仍在争论希特勒在5月24日下令停止进军的真实原因，但可以确定的是德军的这次停止给予了盟军在敦刻尔克周围布置防御的宝贵时间。直到5月26日15:30，希特勒命令部队继续进军，但大多数部队又额外花了16个小时才开始进攻。
5月26日，英國發動發電機行動，意圖營救被包圍的英國、法國和比利時軍隊，讓比利時的守衛圈北部及加来海峡省內的盟軍部隊脫險。行动第一天有约28,000人被撤离。法国第1军团的大部分留在了里尔，由于魏刚未能将法军部队撤到海岸，他们被迫坚守里尔城。5月31日，城中的4万名守军最终投降。第1军团自我牺牲的防守将德军部队吸引至敦刻尔克之外，使得7万名盟军士兵得以逃脱。到了5月31日，盟军总共有165,000人撤离。比利時國王利奧波德三世在5月27日投降，比利時全軍則在5月28日投降，使盟軍的境況變得複雜。比利时军队给盟军防线留下一道从伊珀尔到迪克迈梅德的缺口；尽管如此盟军仍旧避免了崩溃，使139,732名英军士兵和139,097名法军士兵撤离。从5月31日到6月4日，约有2万名英军和9.8万名法军成功撤离，然而仍有3万-4万名作为后卫部队的法军士兵被德军俘虏。整个发电机行动撤离了盟军士兵总计338,226人，其中有215,000名英军士兵。
德國空軍未能完成其阻止盟軍撤離的任務，但仍對盟軍造成嚴重損失。在敦刻爾克戰役中，德國空軍共执行了1,882架次轟炸任務和1,997架次戰鬥機任務。德國空軍給英軍造成的損失佔英軍在法國戰役中損失總額的6%，包括60名寶貴的戰鬥機飛行員。盟軍在撤退行動中總共損失了89艘商船，容積總噸126,518噸；英國皇家海軍的40艘驅逐艦中有29艘被擊沉或被重創。英国皇家空军损失了106架飞机，而德国约有100架飞机确认被毁。另有统计认为德国空军在敦刻尔克一带的损失约为240架飞机。
发电机行动结束后，当巴黎正遭遇短暂的围城战时，第1加拿大步兵师的部分部队被派遣至布列塔尼，但该部队在法国投降后被撤出。英国陆军第1装甲师在1940年6月到达法国。该部队的步兵此前参与了加来战役，因此这次到达法国时没有步兵部队。第1装甲师和第51高地师的前劳工营汇合，被迫执行后卫战斗任务。在戰役結束時，隆美爾讚揚英軍儘管缺乏裝備、以及在大多數的戰鬥中缺乏彈藥，仍然頑強抵抗。
1945年2月26日，希特勒聲稱他允許英國遠征軍逃脫是一種“體育道德”，希望丘吉爾有所回報。然而幾乎沒有歷史學家同意希特勒這種說法，因爲第13號特別訓令中特別要求“徹底殲滅在敦克爾克包圍圈的法國、英國和比利時軍隊”。