סדר הגודל של הכוחות שעמדו לרשות פלאט היה שתי הדיוויזיות ההודיות, הרביעית, בפיקודו של מייג'ר ג'נרל נואל ברספורד-פיירס והחמישית בפיקודו של מייג'ר ג'נרל לואיס הית'. פלאט נאלץ להשאיר חלק ניכר מכוחותיו להגנת סודאן, וכך כללה כל דיוויזיה תוקפת שתי חטיבות בלבד. רגימנט טנקים שהגיע לפורט סודאן לא היה זמין לתחילת המתקפה, עקב בעיות תחבורה בדרכי העפר של סודאן, ואי התאמת מערכת הרכבות לתנועת מובילי טנקים. ב-18 בינואר כאשר היה ברור כי האיטלקים עוזבים את קסאלה, נתן פלאט את הפקודה לפתוח במתקפה.
ההתקדמות לקרן ממערב.
הדיוויזיה ההודית הרביעית התקדמה מקסאלה לאגורדאט בדרך הצפונית דרך וואשאי וקרו. הדיוויזיה ההודית החמישית התקדמה מקסאלה לאגורדאט בדרך הדרומית דרך טסנאי אייקוטה וברנטו.
המכשול הראשון למתקפה היה בקרו, עליה הגנו חמישה גדודים איטלקים. הבריטים הצליחו לאגף את העמדה האיטלקית ולכתר אותה, ולנתק את קווי הנסיגה והאספקה שהובילו מזרחה לקרן. בפעולה זו נפלו בשבי 1,200 חיילים.
אגורדאט עצמה הייתה מוגנת על ידי ארבע חטיבות רגלים, מספר טנקים בינוניים וקלים וסיוע ארטילרי. בשלב זה הצליחו הטנקים להגיע מסודאן ולעמוד לרשות הדיוויזיה הרביעית, ומתקפה משולבת של רגלים וטנקים הצליחה בכיבוש העמדות האיטלקיות באגורדאט.
בתוך תשעה ימים התקדמו כוחותיו של פלאט למרחק של 160 קילומטרים, כשהאיטלקים נסים לפניהם, והם מנתקים את קווי האספקה שלהם, מכתרים אותם ושובים אותם במספרים גדולים. בסך הכל נפלו בשבי 6,000 חיילים איטלקים, ועמם ציוד רב, טנקים, תותחים וכלי רכב אחרים. אבדה משמעותית לכוח התוקף הייתה עם פציעתו של בריגדיר ויליאם סלים, מפקדה של החטיבה ההודית העשירית, במתקפה אווירית ב-21 בינואר.
ההתקדמות לקרן לאורך חוף ים סוף מצפון.
ב-21 בינואר דיווח מפקד חטיבת הרגלים ההודית השביעית, בריגדיר הרולד רואסון בריגס כי האיטלקים נסים מהעיירה קארורה, על חוף ים סוף בצפון. הוא ביקש רשות לרדוף אחריהם. בשלב זה תוגבר כוחו בחטיבה של צבא צרפת החופשית בפיקודו של הקולונל ראלף מונקלאר, שכללה חיילים מצ'אד וחיילים מלגיון הזרים שנלחמו במערכה בנורווגיה, בעת נפילת צרפת, ונקראו בשם "בריגדת המזרח" (Brigade d'Orient). כוח זה בפיקודו של בריגדיר בריגס, התקדם דרומה, לאורך ים סוף, תוך שהוא מסתייע באסדות וכלי שיט קטנים. ההתנגדות היחידה שעמדה בפניו הייתה בעיירה בשם קוב קוב, שם הצטיינו הצרפתים בלחימה. המטרה הייתה חבירה מצפון לכוחות ההודים שהגיעו לאזור קרן ממערב, לקראת המתקפה על העיר קרן עצמה, בה התרכזו עתה כוחות איטלקים רבים שנסוגו מאזורי הגבול עם סודאן. ב-1 במרץ עמדו אנשיו של בריגס כ-20 קילומטרים מצפון לקרן.
קרב קרן.
לאחר נפילת אגורדאט, הנמצאת ממערב לקרן, ניסו אנשי "כוח איילה" בפיקודו של מסרווי לרדוף אחר האיטלקים הנסוגים ולנתק את דרכם לקרן, עיר הנמצאת בעמק מישורי המוקף בהרים גבוהים. הדרך היחידה לקרן ממערב היא נקיק צר העובר בין פסגות ההרים. כל ניסיון להגיע אל אסמרה בירת אריתריאה, מאזור קסאלה, מחייב מעבר דרך קרן. בעיר זו התבצרו האיטלקים שהחזיקו באריתריאה, ושם נועדה להיערך ההתמודדות האמיתית. הצדדים חשו כי קרב זה יכריע את גורל המערכה המזרח אפריקנית כולה, וייתכן שאף את גורל המערכה במזרח התיכון.
אל מול ארבע החטיבות שהפעיל פלאט, וכוח בריגס שהגיע מצפון, ובסך הכל כ-13,000 חיילים, העמידו האיטלקים סך כולל של שלושים ותשעה גדודים, ושלושים ושש סוללות תותחים, כך שעל העיר הגנו למעלה מ-30,000 חיילים ו-144 תותחים, בפיקודו של הגנרל ניקולאנג'לו קרמינאו, שהיה כפוף לגנרל לואיג'י פרושי, מפקד החזית הצפונית. בין החיילים היו יחידות העילית של הצבא האיטלקי - האלפיניסטים, הברסיליירי והגרנדירים מסבויה.
משהגיעו אנשיו של מסרווי למרחק של כחמישה קילומטרים מהעיר, ב-5 בפברואר 1941, מצאו כי הדרך חסומה, וכי הנקיק נחסם באבנים וסלעים, והמנסה לעבור דרכו מותקף מכל הכיוונים מפסגות ההרים שמסביב. בימים שלאחר מכן ביצעו אנשי הדיוויזיה ההודית הרביעית ניסיונות להשתלט על הפסגות המובילות לקרן, ניסיונות שכשלו לאחר אבדות כבדות לשני הצדדים. לאחר כעשרה ימים לא הצליחו הבריטים להתקדם לעבר קרן, והנקיק נותר חסום.
פלאט מצא עצמו במצב בו הוא תוקף עמדה מבוצרת, שהדרך היחידה לכבוש אותה היא בהתקפה חזיתית בדרך הנמצאת בשליטה טופוגרפית מלאה של המגנים, ומסילת הברזל הקרובה ביותר נמצאת במרחק של כמאתיים קילומטרים. מעבר לכך, אלמנט ההפתעה שסייע עד אז להצלחת המתקפה, אבד. פלאט המתין גם להצטרפותה למערכה של טייסת מטוסי הוריקן של חיל האוויר של דרום אפריקה, שכן היכולת האיטלקית בזירה זו להפעיל חיל אוויר נפגעה קשה, ולרשות מגיני קרן לא עמד סיוע אווירי ולא הייתה הגנת נ"מ. בתקופה זו פורק "כוח איילה" ומסרווי הופקד על החטיבה ההודית התשיעית. הדיוויזיה ההודית החמישית, שהמתינה עד אז באזור אגורדאט, הוכנסה למערכה, וכוחותיו של בריגס, כשעמם אנשי חטיבת המזרח של הצרפתים החופשיים, התקרבו לעיר מצפון מזרח, דבר שריתק אליו חלק משמעותי מהכוח המגן ותרם להצלחת ההתקפה המתוכננת. כוח בריגס איים גם על מאסאווה שהייתה מפקדתה של שייטת הים האדום של הצי המלכותי האיטלקי, וחייב השארת כוחות משמעותיים באזור החוף, מקום בו השפעתם על הגנת קרן תהיה אפסית.
המתקפה החלה ב-14 במרץ ונמשכה כשבועיים עד ה-27 במרץ. הלחימה הייתה עזה משני הצדדים. הבריטים לא הצליחו להשתלט על הפסגות השולטות על הנקיק, אך משכבשו הבריטים את עמדת המפתח המכונה מצודת דולוגורודוק, התישו עצמם האיטלקים בשמונה התקפות נגד כושלות. לאחר שלושה ימי לחימה, נעצרה המתקפה לשם היערכות מחדש, ובתקופה זו סבלו הכוחות ממתקפות נגד איטלקיות עזות. ב-25 במרץ חודשה המתקפה, וכעבור יומיים נפרצה הדרך אל העיר, וזו נפלה לידי הבריטים. הלחימה בקרן הייתה עזה. הבריטים ספגו כ-3,500 אבדות, ובהן כ-500 הרוגים. פלאט העריך כי מספר האבדות האיטלקי בהרוגים, פצועים ושבויים, גדול פי עשרים. מספר ההרוגים האיטלקים הגיע ל-3,000, כאשר בין ההרוגים האיטלקים נמצא גנרל בשם לורנציני, שמותו היווה את נקודת השבירה של מגני העיר, וריפה את ידיהם.
בקרבות על קרן נטלה חלק יחידת הקומנדו הארץ ישראלית קומנדו 51. היחידה נטלה חלק בתפיסת ההרים המקיפים את קרן, תוך לחימה קשה, בה הראו לוחמיה לא פעם גבורה והקרבה עצמית. בקרבות נהרגו שישה מלוחמי היחידה, ו-24 נפצעו. עם סיום הקרב צוינו חייליה לשבח על ידי הגנרל פלאט.
הניצחון בקרן הכריע למעשה את הקרב על אריתריאה. צ'רצ'יל כתב במכתב למשנה למלך בהודו, המרקיז מלינלית'גו כי "הקיסרות כולה נסערה נוכח ההישג של הכוחות ההודיים באריתריאה. פרשת ההתלהבות וההתמדה שבהן העפילו לפסגות התלולות של קרן וכבשון לבסוף מזכירה לי מאורעות מן הגבול הצפוני מערבי לפני שנים רבות." כאשר בשנת 1943 זכה ויוול בתואר רוזן החליט להיקרא "הרוזן מוינצ'סטר וקרן".
כיבוש אסמרה.
לאחר נפילת קרן המשיכה הדיוויזיה ההודית החמישית בפריצה מזרחה לכיוון אסמרה, בירת אריתריאה, בעקבות האיטלקים הנסוגים, ואילו הדיוויזיה ההודית הרביעית נותרה מאחור על מנת להשלים את כיבוש העיר קרן עצמה, ולאחר מכן נשלחה שוב לחזית המדבר המערבי.
בדרך בת שמונים הקילומטרים מקרן לאסמרה לא העמידו האיטלקים התנגדות של ממש. ניסיון יחיד לחסום את דרכם של הבריטים נערך בנקיק בשם אד טקלסן, אך הניסיון כשל, וכוחות הדיוויזיה ההודית החמישית המשיכו בדרכם אל העיר שנפלה לידיהם ב-1 באפריל. בעיר נפלו לידי הבריטים עשרת אלפים שבויים נוספים.
כיבוש מאסאווה.
השמדת שייטת הים האדום.
עם נפילתה של אסמרה, היה ברור כי היעד הבא של הצבא הבריטי הוא עיר החוף מאסאווה ששימשה כנמל הבית של שייטת הים האדום. החשש היה כי ספינות השייטת תיפולנה לידי הבריטים אם תיפול העיר לידיהם. מכיוון שכך הורה מפקד השייטת, תת-אדמירל בונטי, לארבע הצוללות השמישות שתחת פיקודו, להימלט אל נמל בורדו דרך נתיב כף התקווה הטובה. שתי ספינות נוספות, ספינת המשא "אריתריאה" ומשחתת נוספת, הגיעו לנמל קובה ביפן.
לאחר המלטות ספינות אלו מנתה השייטת מספר קטן של כלי שיט וביניהן שלוש משחתות שמישות, שלא היו בעלות טווח שיאפשר להן להימלט לנמלים רחוקים. כאשר הבריטים התקרבו לעיר ב-3 באפריל, החליט מפקד השייטת להשתמש במשחתות אלו לפשיטת התאבדות על הנמל הבריטי בפורט סודאן. משחתת אחת לא הצליחה לעזוב את נמל מאסאווה והושבתה בשל כשלים טכניים, ושתי משחתות נוספות התגלו על ידי מטוסי סיור בריטיים וטובעו. כל יתר הספינות של השייטת הושמדו על ידי צוותן.
לאחר אובדן כלי השיט העיקריים של השייטת, הצליחה סירת טורפדו איטלקית לפגוע במשחתת הבריטית "קייפטאון" שליוותה שיירה סמוך לחופי מאסאווה ב-8 באפריל. הייתה זו פעולתה האחרונה של שייטת הים האדום.
נפילת מאסאווה.
לאחר נפילת אסמרה המשיכו יחידות של הדיוויזיה החמישית ההודית, ואנשי כוח בריגס וחטיבת המזרח של צבא צרפת החופשית, במסע לעבר עיר הנמל מאסאווה, שהייתה היעד החשוב האחרון עליו הגנו האיטלקים באריתריאה. מגיני מאסאווה מנו למעלה מעשרת אלפים חיילים, ולרשותם עמדו תותחי חוף כבדים, אותם כיוונו אל הכוח התוקף, אך הם היו מנותקים ומבודדים וסבלו ממחסור בדלק, תחמושת ואספקה. בטרם תותקף העיר, הוכרזה הפסקת אש בת 18 שעות וניתנה למגני העיר הזדמנות להיכנע, אך המפקד האיטלקי ציית לפקודתו של מוסוליני, להגן על העיר עד הסוף, והחליט שלא להיכנע.