מלחמת החורף (Talvisota) נערכה בין ברית המועצות לפינלנד במשך 105 ימים, מ־30 בנובמבר 1939 עד מרץ 1940. היא החלה בפלישה סובייטית ונגמרה בהסכם מוסקבה שבו פינלנד נאלצה לוותר על כ־10% משטחה ולמסור אזורים תעשייתיים כדי לקבל הפסקת אש.
היחסים היו מתוחים שנים רבות. פינלנד נוספה לרוסיה בתחילת המאה ה־19 והכריזה על עצמאות ב־1917. אחרי מלחמת אזרחים מקומית ב־1918 נוצרו איבה וספקנות בין המדינות, שכללו ניסיונות פיניים לכבוש אזורים ברוסיה וסדרת הסכמים שהותירו חיכוכים לאורך הגבול.
לאחר הסכם ריבנטרופ, מולוטוב בין גרמניה וברית המועצות, דרשה מוסקבה ויתורים טריטוריאליים והקמת בסיסים ליד לנינגרד (סנט פטרבורג). הפינים סירבו. במשא ומתן שנערך בסוף 1939 דרשו הסובייטים העברת איים, החכרת בסיס בחצי האי הנקו והזזת הגבול בקרליה. הפינים חששו לאבד את קו המגן שלהם, קו מנרהיים, וסירבו.
ב־26 בנובמבר 1939 אירעה הפגזה ליד הכפר מיינילה. הסובייטים האשימו את הפינים וטענו שנפצעו חיילים. מאוחר יותר התברר שהתקרית נוצקה בדיעבד על ידי הסובייטים כדי לספק תירוץ לפלישה.
הצבא האדום יצא במתקפה רחבה עם יתרון מספרי וחומרי עצום. הפיקוד הסובייטי סבל משיבושים גדולים אחרי הטיהורים ב־1937, 1938: קצינים מנוסים הוחלפו, והחלטות צבאיות הושפעו על ידי הפוליטיקה. בתחילת המלחמה היו לסובייטים כ־450,000 חיילים, אלפי טנקים ומאות מטוסים בחזית לנינגרד.
סטלין עמד בראש המבצע והפקיד את פיקוד לנינגרד. הטיהורים וההתערבות הפוליטית החלישו את היכולת המנהלתית והמבצעית של הצבא.
לברית המועצות היה יתרון רב בטנקים ובאוויר, אך חלק גדול מהטנקים היו קלים והפיקוד סבל מתיאום לקוי.
הפינים בנו במשך השנים קו ביצורים בשם קו מנרהיים במצר הקרלי. הם התאמנו בלוחמת חורף, צליפה ופעילות גרילה על מגלשי סקי. טקטיקת ה"מוטי" פירושה ביתור טורים סובייטיים לקטעים מנותקים והתקפות של יחידות ניידות על קווי אספקה.
אוכלוסיית פינלנד היתה כ־3.65 מיליון. בעת המלחמה עמדו לרשותה כ־127,800 חיילים סדירים ועוד יחידות מילואים ומשמר מולדת בסה"כ כ־340 אלף לוחמים בפוטנציאל.
הפינים היו נחושים אך דלים באמצעים: מעט טנקים ישנים, מלאי ארטילריה מוגבל ומחסור בתחמושת. הם המציאו פתרונות מאולתרים, כמו בקבוקי מולוטוב (נוזל דליק נגד טנקים). תעשיית הנשק בפינלנד היתה מפוזרת, וזה הקשה על ניסיונות להפציצו ולהשמידו.
שטחה של פינלנד מיוער ורווי אגמים, והחורף קשה מאוד. הטמפרטורות ירדו לעתים עד־30, 50 מעלות מתחת לאפס. הקור וקווי התחבורה הצרים הקשו על תנועת כוחות כבדים וסייעו לטקטיקות הפינים.
ב־30 בנובמבר 1939 פתחו הסובייטים בהפגזה ארטילרית ולאחריה מתקפה על פני קו גבול רחב. הפינים בלמו את המתקפות ושימשו יחידות ניידות וטקטיקות גרילה כדי לגרום לאבדות כבדות בצבא האדום.
המלחמה חולקה לשלושה שלבים: שלב ההתקפה הראשוני (עד דצמבר), שלב לחימה סטטית והיערכות מחדש (דצמבר, פברואר), ושלב המתקפה המחודשת על קו מנרהיים שהביא להבקעה במרץ.
הסובייטים הקימו ב־1 בדצמבר ממשלת בובות בטריוקי בראשות אוטו קוסינן. הממשיכה לא זכתה לתמיכה בפנים פינלנד וכשל.
התקפות הסובייטים במצר הקרלי נבלמו על ידי מוקשים, מכשולים ומוצבים מבוצרים. בעיות תקשורת ולוגיסטיקה פגעו בכוח התוקף, וטנקים רבים ננטשו כשהחיילים לא יכלו לתמוך בהם.
הארמייה הסובייטית בצפון ניסתה לאגף את קו מנרהיים. התנועה הממונעת הוגבלה לצירים, ונעשה בה שימוש בטקטיקות גרילה שפגעו בקווי האספקה.
הסובייטים ניסו לבתר את פינלנד לשניים ולכבוש מרכזי תחבורה. בגזרה זו הותקפה ונחסמה דיוויזיה סובייטית (163), ואחר כך הושמדה כמעט לחלוטין על ידי כוחות פינים ניצבים ומתקיפים ניצבים.
בצפון כבשו הסובייטים חלקים סביב פטסמו אך התקדמותם נעצרה בגלל מזג אוויר קשה ותנאי שטח שגבילו תנועה ממונעת.
לקראת סוף דצמבר הובהרה למוסקבה שלא תיהיה פריצת דרך קלה. הוחלט לרכז כוחות ולתקוף בחזית צרה במצר הקרלי.
הצי הבלטי של הסובייטים היה חזק על הנייר אך חסר אימון ותשתית. הים כמעט קפא בדצמבר, ולכן הפעילות הימית היתה מוגבלת. מספר ספינות סוחר וטורפדו הוטבעו מצד שני.
העולם הראה סימפטיה לפינים. מתנדבים נוספים הגיעו משוודיה, דנמרק ונורווגיה, ושוודיה סיפקה ציוד וכלים. תוכניות סיוע של צרפת ובריטניה נדחו או הוגבלו בגלל התנגדות המדינה השוודית והנורווגית למעבר כוחות בשטחן.
בפברואר 1940 ניסו הסובייטים להציע הפסקת אש. בסופו של דבר פינלנד נאלצה לפתוח במשא ומתן; הסכמות הושגו והוסכם על הפסקת אש ב־13 במרץ 1940. במלחמה נהרגו כ־125,000 חיילים סובייטים וכ־27,000 פינים, ועוד עשרות אלפים נפצעו.
בהסכם של מרץ 1940 פינלנד ויתרה על חלקים נרחבים של קרליה, כולל העיר ויפורי, וכן חלקים נוספים וצירים אסטרטגיים. כ־422,000 תושבים נאלצו להיכנע ולעזוב את בתיהם. חצי האי האנקו הוחכר לסובייטים כבסיס למשך 30 שנה.
הקרבות הגדולים התרחשו במצר הקרלי, בסומה, בסואומוסאלמי ובראטה. הנחיתות המספרית והלוגיסטית של הפינים הוחלפה בחוכמת לחימה, בלוחמת חורף ובטקטיקות ניידות, שהקנו להם הצלחות יחסיות למרות התבוסה בסופו של דבר.
מלחמת החורף היתה קרב בין פינלנד וברית המועצות. היא נמשכה 105 ימים, מ־30 בנובמבר 1939 עד מרץ 1940. ברית המועצות פלשה לפינלנד. בסוף פינלנד התרתה חלק מאדמה והסכימה להפסקת הלחימה.
לפני המלחמה ניסו הסובייטים לשנות גבולות כדי להרחיק סכנה מלנינגרד. הפינים סירבו לשינויים אלה.
אירעה תקרית גבול בשם מיינילה. הסובייטים השתמשו בה כתירוץ לתקיפה. שנים לאחר מכן התברר שהתקרית בוימה על ידם.
ברית המועצות היתה גדולה וחזקה. פינלנד היתה קטנה ודלת אמצעים. אבל הפינים ידעו ללחום בחורף. הם השתמשו בסקי כדי לנוע וירי מדויק כדי לפגוע באויב.
פינלנד בנתה קו הגנה שנקרא קו מנרהיים. זהו רצף עמדות מבוצרות להגן על המדינה. הפינים לחמו בטקטיקה שנקראת "מוטי": הם בודדים יחידות סובייטיות ותקפו אותן בצוותים קטנים.
לפינים היו מעט טנקים וכלי נשק ישנים. הם השיגו נשק מהסובייטים שנלכד או השתמשו בכלים פשוטים כמו בקבוקי מולוטוב. בקבוק מולוטוב הוא בקבוק עם נוזל דליק. הפינים ייצרו ממנו הרבה.
פינלנד קרה מאוד בחורף. לפעמים היה עד־30, 50 מעלות מתחת לאפס. זה עצר הרבה כלי רכב ופגע בנשק שלא הוכן לחום הקיצוני.
ב־30 בנובמבר הסובייטים פתחו בהתקפה גדולה. הפינים עמדו וקיבלו עזרה מתנדבים ממדינות אחרות. רבים בעולם תמכו בפינים בשל המצב.
במקום זה נערכו קרבות קשים. הסובייטים ניסו לפרוץ את קו מנרהיים. הפינים השתמשו במוקשים ובמוצבים ובלמו אותם זמן רב.
במרכז הצבא הסובייטי ניסה לחתוך את פינלנד לשניים. בצפון נכבשו ערים קטנות, אבל התקדמות הסובייטים נעצרה בגלל מזג האוויר וקושי התנועה.
הים קפא בחורף ולכן לא היה הרבה קרב ימי. היו כמה פעולות של צוללות והפצצות, אבל השפעת הים היתה מוגבלת.
אנשים רבים בעולם נתנו סיוע רפואי ותמיכה. שוודיה שלחה מתנדבים וציוד. גם דנים ונורווגים הגיעו להתנדב.
בקיץ של אחרי, הסובייטים הציעו שלום. פינלנד נאלצה לקבל תנאים קשים. ב־13 במרץ 1940 נחתם הסכם מוסקבה. פינלנד ויתרה על חלק מאדמתה. אלפי אנשים נאלצו לעזוב את בתיהם.
המלחמה הראתה שפינים קטנים יכולים להגן על עצמם בחורף. אך המחיר היה גבוה: אבדות, פינוי תושבים ואובדן שטחים. מאוחר יותר החיכוכים חודשו במלחמות נוספות.