早在1938年春季,苏联就以德军可能通过芬兰登陆并借此入侵苏联为借口,提出了援助芬兰并在芬兰湾岛屿上设防的要求。然而,这一提议被芬兰坚决拒绝。到了1938年底和1939年4月,苏联再次两次向芬兰提出要求,建议割让或租借芬兰湾的岛屿,并承诺以卡累利阿地区的土地作为交换。然而,这些提议也都被芬兰一一拒绝。在这种情况下,苏联采取了更加强硬的手段。1939年10月12日,苏芬两国在莫斯科举行了会谈,但两天后的10月14日,苏联正式向芬兰提出了强硬的领土交换要求,要求芬兰将列宁格勒北侧的边界后移至卡累利阿地峡,并且割让芬兰湾内靠近列宁格勒的岛屿,同时将芬兰湾入口的汉科港租借给苏联作为海军基地。作为交换,苏联提议将比芬兰所割让领土面积大两倍的边界中段一块领土划给芬兰。这一提议依然遭到芬兰的拒绝。
随着谈判的破裂,苏联于1939年11月28日宣布废除1932年签订的苏芬互不侵犯条约。紧接着,苏芬战争爆发。1939年11月30日拂晓,苏军开始分五路进攻芬兰。战争爆发当天,芬兰共产党领导人奥托·库西宁在苏军占领的铁里尤基村宣布成立“芬兰民主共和国”,并与苏联缔结了互助条约。尽管苏军兵力强大,但战争初期,苏联的进攻异常艰难,芬兰军队竟然成功消灭了苏军的两个师。到1939年底,芬兰军队不仅稳住了曼纳尔海姆防线,还重创了苏军第8、第9集团军的中央部分以及第9集团军的南北两翼。 1940年1月,苏军在铁木辛哥的指挥下,加强了主战场的兵力,并于2月11日发起了新的大规模进攻。苏军以13个师的兵力通过拉多加湖上的坚冰,向芬兰军队防守最坚固的曼纳尔海姆防线发起了猛攻。芬兰军队人力不足,防线终于被突破,芬兰不得不于2月15日撤退到第二道防线。3月2日,战斗中心转移至准堡,同时另一支苏军从维堡背后登陆实施包抄,首都赫尔辛基遭遇了严重威胁。此时,芬兰的基本兵力已几乎消耗殆尽,最终被迫向苏联求和。1939年3月12日,苏芬两国在莫斯科签订了和约。通过这场战争,苏联从芬兰手中获得了4.1万平方公里的土地。根据和约的规定,苏芬边界被后移至列宁格勒北部150公里,原属于芬兰的卡累利阿地峡(包括维堡、维堡湾及其岛屿)、拉多加湖西岸、芬兰湾中的一些岛屿以及雷巴契和斯列特尼半岛的部分地区,全部划归苏联所有。同时,汉科半岛及其周围海域被租给苏联50年。这场战争造成了惨重的伤亡,苏军阵亡4.8万人,伤者多达15万人,而芬兰阵亡6万人,伤者25万人。斯大林借此战争为苏联在“东方战线”的最北段划定了明确的边界。