המתקפה הסובייטית נפתחה בהרעשת ריכוך ארטילרית אדירה. בגזרות המאמץ העיקרי ריכז הפיקוד הסובייטי 250 קני ארטילריה לק"מ חזית. הכוחות התוקפים השתמשו בנורים וזרקורים כדי להאיר את הלילה, ולסנוור את המגינים הגרמניים. לאחר מכן הגיע גל של טנקי-מחרשה שפילסו דרך בשדות המוקשים, ובעקבותיהם הגיע המתקפה העיקרית של חי"ר מלווים בטנקים נוספים ובתותחים מתנייעים. האסטרטגיה הסובייטית של "הקרב העמוק" קבעה שיש לנהל את הקרב בעומק מערך ההגנה של האויב, ולפיכך יחידות גרמניות רבות לא הושמדו אלא רק כותרו בידי יחידות חוד החנית שהמשיכו בדהרה הלאה והניחו ליחידות הבאות אחריהן לסיים את המלאכה. פני השטח היו בוציים והרריים, ונהרות רחבים חצו אותם. עובדה זו שיחקה לטובת הגרמנים, אולם המהנדסים הסובייטיים הצליחו למצוא פתרונות לבעיות אלו, והשתמשו בלוחות עץ כדי לאפשר לטנקים לעבור בביצות. המתקפה הראשונית הייתה מוצלחת מאוד, והקווים הגרמניים לכל אורך החזית נפרצו. בשלב מסוים התקדמו הטנקים הסובייטים כ-35 ק"מ ליום.
ויטבסק-אורשה.
הגזרה הצפונית של קבוצת ארמיות מרכז הוחזקה בידי ארמיית הפאנצר השלישית בפיקודו של גאורג-הנס ריינהרדט והאגף השמאלי של הארמייה הרביעית. מוקדי התנגדות עיקריים בגזרה זו היו הערים ויטבסק ואורשה, אשר הוכרזו כערי מבצר ("פסטונג"). הגזרה הותקפה על ידי שתי קבוצות ארמיות סובייטיות - החזית הבלטית הראשונה של איוואן בגרמיאן והחזית הבלארוסית השלישית של איוואן צ'רניאחובסקי. המתקפה של בגרמיאן הונחתה על האגף הצפוני של הגזרה, בעוד צ'רניאחובסקי התמקד באגף הדרומי. המתקפה המשותפת של שתי החזיתות קיבלה את השם "מתקפת ויטבסק-אורשה".
המתקפה הסובייטית על הגזרה הצפונית התפתחה במהירות, וזכתה להצלחה גדולה. תוך יומיים הדפה החזית הבלטית הראשונה את הקורפוס ה-9 אל מעבר לנהר הדווינה, וכיתרה את הקורפוס ה-53 בוויטבסק. ב-24 ביוני קיבל הקורפוס ה-53 אישור מוגבל לסגת מוויטבסק. שלוש מתוך ארבע הדיוויזיות של הקורפוס נועדו לסגת מהעיר, אך דיוויזיה אחת נידרשה להישאר מאחור כדי להגן עליה. בפועל, כשהגיעה פקודת הנסיגה, העיר כבר הייתה מכותרת בידי הכוחות הסובייטיים. מפקד הקורפוס, פרידריך גולוויצר, החליט לא לציית להוראות, וב-26 ביוני ניסה לפרוץ את טבעת הכיתור הסובייטית עם כל כוחותיו. אולם ניסיון הפריצה מהכיתור נכשל, ועד 29 ביוני הושמדו הכוחות המכותרים באזור ויטבסק והעיר נפלה לידי הסובייטים. כ-28,000 מחיילי הקורפוס ה-53 שנותרו בחיים, נפלו בשבי.
במקביל, פתח צ'רניאחובסקי במתקפה נגד הקורפוס ה-27 אשר השתייך לארמייה הרביעית של קורט פון טיפלסקירך. הקורפוס ה-27 התבצר בעיר אורשה, וחלש על כביש מינסק-מוסקבה. כביש זה הוחזק על ידי הדיוויזיה ה-78, שתוגברה ביחידות ארטילריה ותותחי סער. הדיוויזיה גם הייתה אחראית על הגנת אורשה שהוכרזה כמבצר. בפועל, כבר ביומה הראשון של המתקפה, הבקיעו הכוחות הסובייטיים את קו ההגנה הראשון של הדיוויזיה, לאחר שספג הפגזת ריכוך ארטילרית מסיבית. מצבו של הקורפוס ה-27 הפך למסוכן כאשר מצפון לו התמוטטו עמדותיה הקדמיות של ארמיית הפאנצר השלישית והקורפוס ה-6 נאלץ לפתוח בנסיגה ומפקדו גאורג פייפר נהרג. ב-25 ביוני ניפצו הסובייטים את התנגדות שאריות הקורפוס ה-27, ויום למחרת נאלץ מפקדו פאול ולקרס להורות על נסיגה כללית של כוחותיו. באותו יום השתלטו הסובייטים על כביש מינסק-מוסקבה ושיחררו את אורשה. ב-28 ביוני כבר הגיעו יחידות החלוץ של ארמיית הטנקים החמישית של המשמר אל הנהר ברזינה.
מוהילב.
בעוד החזית הבלארוסית השלישית והחזית הבלטית הראשונה תוקפות את גזרתה הצפונית של קבוצת הארמיות, תקפה החזית הבלארוסית השנייה את מרכז הקבוצה. על גזרה זו הגן קורפוס הפאנצר ה-39 בפיקודו של רוברט מרטינק. הקורפוס היה חלק מהארמייה הרביעית של טיפלסקירך, ויחידותיו היוו את קצה המרפסת הבלארוסית, והחזיקו בראש גשר מעבר לנהר הדנייפר. מטרתה של המתקפה הייתה העיר מוהילב, ולפיכך היא נקראה "מתקפת מוהילב".
הקורפוס ספג אבדות כבדות מידי הארמייה ה-49, וכבר ב-25 ביוני נאלץ טיפלסקירך לבקש אישור להורות לו לסגת. אישור כזה לא הגיע, וטיפלסיקרך הורה למרטינק לסגת לדנייפר על דעת עצמו. מפקד קבוצת הארמיות, בוש, דרש מטיפלסקירך להורות למרטינק לחזור לעמדותיו הקודמות, אולם בשלב זה הדבר היה בלתי אפשרי. ב-26 ביוני נפגש בוש עם היטלר, וזה האחרון הורה לו להסיג את הקורפוס עד מעבר לברזינה. יום למחרת חצו הסובייטים את הדנייפר, וב-28 ביוני שחררו את מוהילב. הגרמנים פתחו בנסיגה מבוהלת, כשהם מותקפים ללא הרף בידי חיל האוויר הסובייטי ויחידות החלוץ של השריון הסובייטי. ב-30 ביוני הגיעו הגרמנים לברזינה, וסיימו את חצייתו ב-2 ביולי.
בוברויסק.
מדרום, תקפה החזית הבלארוסית הראשונה של קונסטנטין רוקוסובסקי את הארמייה התשיעית של הנס יורדן. ביום הראשון של המתקפה, נאלץ רוקוסובסקי לסגת לאחר שספג אבדות כבדות, אולם כבר למחרת הצליח להשיג פריצה ראשונית. הארמייה הסובייטית השלישית כיתרה את הקורפוס ה-35, בעוד הארמייה ה-65 כיתרה את קורפוס הפאנצר ה-41. שתי היחידות נאלצו לסגת אל בוברויסק ויצרו שם כיס התנגדות. הכיס כותר לחלוטין בידי הסובייטים, שהפציצו אותו יום ולילה מהאוויר ומהיבשה. הקורפוס ה-55 הצליח להימלט ומנע בכך את השמדתה המוחלטת של הארמייה ה-9. ב-28 ביוני ניסו הגרמנים המכותרים לבצע פריצה מהכיס, אולם רק יחידות מעטות הצליחו להימלט. יום למחרת שחררו הסובייטים את בוברויסק לאחר לחימה אינטנסיבית ברחובות.
שלב שני.
מינסק.
משנפרצו עמדותיה הקדמיות של קבוצת ארמיות מרכז, החלו הסובייטים להתמקד בשלב הבא: העיר מינסק (מתקפת מינסק). בעיר זו התרכזו מרבית שרידיה של הארמייה הרביעית, וכן חלק מניצולי הארמייה התשיעית. כוחות החלוץ של הסובייטים החלו לחסום את הגישה לברזינה ולכתר את העיר. ה-OKH הורה להעביר את דיוויזיית הפאנצר ה-5 מקבוצת ארמיות צפון אוקראינה אל בלארוס, במטרה לנסות לאבטח את מעברי הברזינה ולאפשר נסיגה מסודרת ממינסק. ב-29 ביוני הותקפה התגבורת הגרמנית בידי ארמיית הטנקים ה-5 של המשמר וארמיית המשמר ה-11, והיא נאלצה לפנות את מעבר הברזינה ולסגת לבוריסוב. יום למחרת הם נאלצו לפוצץ את הגשרים על הברזינה כדי למנוע את כניסת הסובייטים לבוריסוב. קורפוס הטנקים ה-2 של המשמר חצה את הנהר והקים שם ראש גשר במטרה למנוע מהגרמנים לחזור לעברו השני. כעת נחסמה דרך מילוט זו בפני הכוחות במינסק, והעיר כותרה. ב-2 ביולי קיבלו הגרמנים אישור לסגת, אולם כבר היה מאוחר מדי. יום למחרת פרצו הסובייטים לעיר, והחלו לכבוש אותה בלחימת רחוב. הגרמנים עשו מספר ניסיונות לסגת, אולם רק מעטים הצליחו בכך. במהלך הקרב על מינסק איבדו הגרמנים כ-100,000 איש, מתוכם 40,000 הרוגים.
פולוצק.
במקביל לכיבוש מינסק, תקפו הסובייטים את פולוצק (מתקפת פולוצק) מתוך מטרה להבטיח את השלמת כיתורה של מינסק מצפון, וגם כדי להשמיד את ארמיית הפאנצר ה-3. בניסיון נואש למנוע את נפילת העיר, העבירו הגרמנים לגזרה את הדיוויזיה ה-290 והדיוויזיה ה-81. ב-1 ביולי החלו הסובייטים במתקפה על העיר עצמה. הגרמנים התגוננו בעקשנות, והעיר נפלה רק ב-4 ביולי לאחר לחימת רחוב עקשנית.
שלב שלישי.
שיאוליאי.
ב-28 ביוני הדיח היטלר את ארנסט בוש מהפיקוד על קבוצת ארמיות מרכז, ומינה במקומו את ולטר מודל. זה האחרון ניסה לרכז מחדש את מה שנותר מהכוחות הגרמניים, ובאמצעות תגבורות מעטות שהחלו לזרום מצפון אוקראינה, קיווה להקים קו הגנה באזור לידא. הסובייטים מצדם, לא ציפו להצלחה כה גדולה בשלב כה מוקדם של המבצע. בלארוס למעשה שוחררה לגמרי, והם נמצאו כעת בשטח המדינות הבלטיות. ב-8 ביולי נפגש סטלין עם גאורגי ז'וקוב כדי להגדיר מטרות חדשות למבצע. בעצתו, החליט סטלין להמשיך את המבצע ולשחרר גם את ליטא, לטביה ופולין המזרחית. משימה זו הוטלה על החזית הבלטית הראשונה. בגרמיאן פתח במתקפה ב-5 ביולי, כשיעדו הוא העיר קובנה שבליטא. בשלב זה התגבורות הגרמניות הצליחו להאט מעט את התקדמות הסובייטים. ב-14 ביולי החליט הסטאבקה שקובנה תשוחרר בידי החזית הבלארוסית השלישית, וכי בגרמיאן יתמקד בשחרור העיר שיאוליאי. לצורך כך, הופקעה מבגרמיאן הארמייה ה-39, וכפיצוי הוא קיבל את הקורפוס הממוכן ה-3. עוד באותו היום הוא החל במתקפה בכיוון זה. פוניבז' שוחררה ב-22 ביולי, וב-27 ביולי שוחררה שיאוליאי. בגרמיאן חדר גם ללטביה, ועד 31 ביולי כבר הגיע למפרץ ריגה. קבוצת ארמיות צפון כותרה בקורלנד ונותרה שם עד סיום המלחמה.
וילנה.
על החזית הבלארוסית השלישית בפיקודו של צ'רניאחובסקי, הוטל לשחרר את עיר הבירה הליטאית וילנה. בניסיון למנוע מהסובייטים לחדור לליטא ממזרח, ניסו שרידיה של הארמייה הרביעית להחזיק בתחנת הרכבת של מולודכנו, אולם היא נלכדה ב-5 ביולי לאחר מתקפה משולבת של ארמיות הטנקים ה-11 וה-5 בסיוע קורפוס הפרשים ה-3 של המשמר. ב-7 ביולי הגיעו הסובייטים לווילנה, אשר הוחזקה בידי כוחות של ארמיית הפאנצר השלישית. תוך יום אחד סיימו הסובייטים לכתר את העיר, והחלו לכבוש אותה. על חיל המצב הגרמני של העיר הוטל להילחם בכל מחיר. במקביל לחדירה הסובייטית לעיר, פתח ארגון הארמייה קריובה במרד נגד הגרמנים (מבצע אוסטרה ברהמה). לאחר מספר ימי קרבות רחוב קשים, ב-12 ביולי תקפה דיווזיית הפאנצר ה-6 בכל כוחותיה, והצליחה ליצור מסדרון בריחה קטן עבור הכוחות הגרמניים הנצורים בעיר. עם זאת, רק מעט מאוד חיילים גרמנים הצליחו להימלט לפני שלמחרת היום סגרו הסובייטים את המסדרון, וסיימו את כיבוש העיר.
ביאליסטוק.