1920年4月25日,波军在普里皮亚特河至第聂伯河宽500公里正面上发动进攻,短时间内向乌克兰腹地推进了200公里,5月7日夺占了基辅,但未能合围红军第十二集团军。
此时,波军战线已长达1000公里,后勤补给日益困难,已成了强弩之末。5月14日,红军西方面军在预备队尚未集中的情况下,在白俄罗斯向波军率先发起反攻,但因兵力分散,协同不好,被波军所退。5月20日,红军完成了反攻准备,并从南北西翼先后转入反攻。实施了基辅战役、七月战役、利沃夫战役和华沙战役。反攻前期,红军节节胜利,一直打到华沙、利沃夫城下。进行了决定此次战争命运的大决战——华沙战役。
鉴于红军的顺利进攻和波军的全线溃退,加米涅夫于7月22日改变了原定作战计划。命令西方面军不作战役休整,继续追歼败退的波军,至迟于8月12日以前强渡维斯瓦河,攻战华沙,而西南方面军改向利沃夫进攻。此一变化,使两个方面军的突击由向心变为离心之势,破坏了他们之间的协同,削弱了突击力量。
8月8日,图哈切夫斯基签发命令,欲图迅速攻占华沙,全歼波兰守军,具体部署是:
第四集团军在骑兵第三军协同下从北迂回华沙,然后向南直插普洛次克,切断波军退路及西方国家对波军的补给线;第十三、十五集团军在华沙东北攻击波军左翼;第十六集团军及第十三集团军部分兵力在华沙桥头堡正面实施牵制突击。然而,在华沙战役打响之前,西方面军因连续作战已疲惫不堪,实力锐减,总兵力只剩下4.5万人,且弹药与给养十分缺乏。此时,行动在两个方面军结合部的西方面军莫济尔集群及与之毗邻的西南方面军第十二集团军,都远落后于十六集团军。同时,在协约国的支援下,波军第一、四集团军已得到补充,第五集团军已调到华沙前线。波军兵力已增加到11万余人,超过红军1倍以上。但因图哈切夫斯基求胜心切,无视这些变化,于8月13日下令向华沙发起攻击,终因兵力分散、力量不足,未取得进展。
波军总司令毕苏茨基冷静分析,发现了西方面军的弱点。
8月6日,他决定以第五、一、二集团军在华沙正面及其以北牵制和消耗红军西方面军主力,而以第四集团军及第三集团军部分兵力由南攻击红军第十六集团军的侧后,尔后各集团军转入总攻,在华沙方向粉碎西方面军的进攻。这时,红军总司令加米涅夫和图哈切夫斯基既未识破波军反击的企图,也未发现波军反突击集团的集结。因此,红军未作抗击反突击的任何准备。
8月16日,波军第三、四集团军向红军第十六集团军侧后突然发起攻击。对此,红军第十六集团军毫无思想准备,惊慌失措,迅速溃退,结果,暴露了第三、十五集团军的侧后。
8月18日,波军各集团军全部转入总攻,使红军西方面军顿时陷入一片混乱之中。
此时,远在明斯克方面军司令部内的图哈切夫斯基才得知波军发动翼侧攻击的消息。他虽毫不迟疑地向前线红军发出了撤出战斗的命令,但为时已晚,部队无法执行其命令,正在实施迂回的第四集团军以及第十五集团军两个师无力向东突围,只好撤入东普鲁士,在那里被解除了武装。波军的反攻,使红军西方面军遭受到毁灭性打击,被迫全线溃退。
到8月25日,波军推进到格罗德诺、布列斯特—立陶夫斯克和西布格河中游的符沃达瓦一线时,红军西方面军在后方预备队的支援下,终于阻止了波军的前进,华沙战役至此结束。
这时,俄波双方都已无力再战。因此,根据苏维埃政府的建议,俄波两国政府举行了和谈。1920年10月12日,双方在里加签订了和约初步条款,1921年3月正式签订和约。
和约规定,俄波之间的国境线比《凡尔赛和约》所规定的“寇松线”东移了200公里,使西白俄罗斯和西乌克兰划归波兰。俄波战争以双方签和,达成妥协而告结束,这个和约使苏维埃俄国赢得了西部边境的和平,从而能集中力量取得国内战争的胜利。