Kallaletungi ettekäändeks sai Mainila intsident, mis olevat toimunud 26. novembril. Moskva väitis, et Soome poolelt oli avatud tuli Punaarmee väeosade pihta. Kuid Soome kahurid poleks kohe kuidagi suutnud väidetavat piirkonda tabada ja Helsingis järeldati, et Punaarmee on ise oma sõdureid tulistanud. 2004. aastal arvas Peterburi ülikooli professor Vladimir Barõšnikov, et ilmselt mingit tulistamist polnudki: hukkunute kohta ei leidu nimelt ühtegi dokumentaalset tõendit.

NSV Liit nõudis intsidendi järel taas Soome vägede tagasitõmbumist 25-kilomeetrisest piirialast, kuigi Helsingi oli sellest keeldunud juba oktoobris peetud läbirääkimistel. Soomel polnud võimalik jätta kaitseta Karjala kannasele rajatud kindlustuste vööndit. NSV Liidu väliskomissar Vjatšeslav Molotov esitles toimuvat aga Soome süüna: Helsingi soovivat hoida Leningradi sõjalise ohu all.

„Sõjategevus N Liidu ja Soome vahel algas täna varahommikul kell 7, mil venelased hakkasid Karjala-Kannaksel tungima nii maakindlustest kui ka merelt Terijoele ja Vemmelsuule,” edastas Päewaleht 1. detsembril 1939 päev varem saabunud ETA telegrammi. Pommid tabasid veel Helsingit ja Viiburit. Haavata sai sõja esimesel päeval ka esimene eestlane: Soome ooperi majahoidja abikaasa proua Jask. 1. detsembril 1939 moodustati Helsingis uus valitsus Risto Rytiga eesotsas ja vägede ülemjuha-tajaks määrati jälle marssal Carl Gustaf Emil Mannerheim.

Punaarmee paraadsõjast ei tulnud siiski midagi välja, ehkki vägesid juhtis sõjakomissar Kliment Vorošilov isiklikult koos Leningradi sõjaväeringkonna juhi Kirill Meretskoviga. Punaarmee pealöök pidi antama 7. armeega otse Leningradi poolt Karjala kannasele, sealt nad aga läbi ei pääsenudki. Mannerheimi käe all rajatud kindlustus-vöönd osutus tema juhtimisel kuni veebruarini murdmatuks.

Murmanskist pealetungi alustanud 14. punaarmee hõivas Petsamo. Karjala aladelt tungis 9. punaarmee ka Soome järvistusse, kuid Suomussalmi lahingus saavutas Soome armee täieliku võidu. Põhja poolt Laadogat tungis peale 120 000 mehega 8. punaarmee, aga kahest Soome diviisist piisas selle peatamiseks.

Maailma ajakirjandus oli äärmiselt üllatunud, et Soome sellele rünnakule vastu pidas. Soome sõna „sisu” (vastupanutahe) omandas üleilmse tuntuse, nagu ka soomlaste leiutatud „Molotovi kokteilid”. Ja 20. sajandi üheks külmemaks talveks olid valgesse riietatud ja suuskadel Soome sõdurid loomulikult paremini valmis kui NSV Liidu eri otsadest kokku veetud soldatid.

Eesti sattus Talvesõjas väga piinlikku rolli. Juba teisel rünnakupäeval tulistati Soome kohal alla Eestist startinud Nõukogude sõjalennuk – ennast maailmasõjas neutraalseks kuulutanud Eestil polnud enam kontrolli oma territooriumi üle. Küll jõudis Soome Eestist vabatahtlikke, kes läksid appi punavägesid tõrjuma, samuti saadi siit vajalikku luureinfot. Nüüd väidetakse Soomes, et Tallinn oli andnud Helsingile mitteametlikult ka loa rünnata siinpool lahte asunud Punaarmee baase. Rünnaku Paldiski lennuväebaasi purustamiseks lükkas Soome aga edasi ja sõda sai enne läbi.

Pealesunnitud rahu

Briti ja Prantsuse valitsus valmistasid ette Soomele vägede appi saatmist, kuid Norra ja Rootsi keeldusid neid läbi laskmast. 6. veebruaril 1940 küsisid London ja Pariis Helsingist ametlikku appikutset, ent Mannerheim leidis, et sellega on hiljaks jäädud.

29. jaanuaril 1940 teatas Moskva, et on valmis rahuläbirääkimisteks. Soome keeldus maa-alade loovutamisest, kuid alanud Punaarmee uus pealetung pani neid ümber mõtlema.

Lõputult poleks Soome enam vastu pidanud. Punaarmee murdis läbi 18. veebruaril 1940 ja kuna päevas langes keskmiselt juba üle tuhande sõduri, jõuti Helsingis veendumusele, et seekordne rünnak on pidurdamatu.

11. märtsil 1940 allkirjastati Moskvas vaherahu. Soome kaotas oma territooriumist 35 000 ruutkilomeetrit ja pidi leidma uue püsiva kodu enam kui 400 000 „evakkole” ehk ümberasujale.