Landingen in de lucht
Om het de Duitsers moeilijk te maken aanvallen uit te voeren tijdens de fase van de zeeaanval, werden luchtlandingsoperaties gebruikt om bruggen en wegovergangen te veroveren. De luchtlandingen achter de stranden waren ook bedoeld om de soldaten die op de stranden landden te helpen door het Duitse kustverdedigingsgeschut te vernietigen.
Stranden
Op Sword Beach kwam de reguliere Britse infanterie aan land met weinig slachtoffers. Aan het eind van de dag waren ze ongeveer 8 kilometer opgeschoten, maar ze kwamen niet zo ver als Montgomery had gewild. Caen was aan het eind van D-Day nog steeds in handen van de Duitsers en dat bleef zo tot operatie Charnwood, op 9 juli.
De Canadese troepen die landden op Juno Beach hadden een moeilijke strijd. Zowel Duitse betonnen fortificaties als een zeemuur die twee keer zo hoog was als op Omaha Beach maakten Juno zeer moeilijk aan te vallen. Juno was na Omaha het zwaarst verdedigde strand op D-Day. De Canadezen waren binnen enkele uren van het strand en rukten landinwaarts op. Zij waren de enige eenheden die hun D-Day doelen bereikten, maar de meeste eenheden vielen een paar kilometer terug om sterkere verdedigingsposities in te nemen.
Bij Gold Beach vielen veel doden en gewonden omdat de Duitsers een dorp op het strand sterk hadden versterkt. De 50e (Northumbrian) Infantry Division rukte tegen het einde van de dag bijna op tot Bayeux. Toen commando-eenheden de Port-en-Bessin veroverden, konden de geallieerden hun onderzeese PLUTO-pijpleiding gebruiken om brandstof aan te voeren.
De Amerikanen die landden op Omaha Beach kregen te maken met de veteraan van de Duitse 352e Infanteriedivisie, een van de best getrainde groepen op de stranden. Bovendien was Omaha het zwaarst versterkte strand. Commandanten overwogen het strand te verlaten, maar kleine eenheden infanterie wisten de kustverdediging te omzeilen. Tegen het einde van de dag waren twee gebieden veroverd. De controle over het strand breidde zich de volgende dagen uit en op de derde dag waren de doelen van D-Day bereikt.
Bij Pointe du Hoc moest het 2e Ranger bataljon de 30 meter hoge kliffen beklimmen. Terwijl ze klommen, schoot de vijand op hen en liet granaten vallen. Ze gebruikten touwen en ladders om naar boven te klimmen en de kanonnen te vernietigen.
De strandversterkingen waren belangrijke doelen omdat één enkele artilleriewaarnemer het vuur op de Amerikaanse stranden had kunnen richten. De Rangers veroverden de vestingwerken. Ze moesten vervolgens twee dagen vechten om de locatie te behouden en verloren meer dan 60 procent van hun mannen.
Het aantal doden en gewonden op Utah Beach, de meest westelijke landingszone, was het laagste van alle stranden. Slechts 197 van de 23.000 gelande troepen werden gedood of gewond. De troepen van de 4th Infantry Division, die op het strand landden, trokken aan het begin van de middag landinwaarts en sloten zich aan bij de 101st Airborne Division.
Toen de stranden eenmaal onder controle waren, werden rond 9 juni de Mulberry-havens ingericht. Eén werd aangelegd bij Arromanches door Britse troepen en de andere bij Omaha Beach door Amerikaanse troepen. Hevige stormen op 19 juni veroorzaakten problemen met de landing van voorraden en vernietigden de haven van Omaha. De haven van Arromanches bevoorraadde dagelijks ongeveer 9.000 ton tot eind augustus 1944, toen de haven van Cherbourg door de geallieerden was veroverd.
De Duitse 21ste Panzer-divisie viel aan tussen Sword en Juno beaches en bereikte bijna het Kanaal. Geallieerde antitankschutters zorgden ervoor dat ze zich voor het einde van 6 juni terugtrokken.
De geallieerde invasieplannen voorzagen in de inname van Carentan, St. Lô, Caen en Bayeux op de eerste dag. Het plan was om alle stranden te verbinden, behalve Utah en Sword (waarvan de laatste met parachutisten) en een frontlinie op 10 tot 16 kilometer van de stranden. Geen enkel doel was bereikt. Het aantal doden en gewonden was niet zo hoog geweest als sommigen hadden gevreesd (ongeveer 10.000, vergeleken met de 20.000 die Churchill had geschat), en de bruggen hadden de Duitse aanvallen overleefd.
Cherbourg
In het westelijke deel van het invasiegebied moesten de Amerikaanse troepen het schiereiland Cotentin bezetten, met name Cherbourg, om de geallieerden een diepwaterhaven te verschaffen. Het land achter Utah en Omaha bestond uit oevers en heggen, zodat tanks, geweervuur en zicht er niet doorheen konden. Dat maakte de plaats tot een ideale defensieve positie.
De Amerikaanse infanterie vorderde langzaam en had veel doden en gewonden toen zij oprukte naar Cherbourg. De luchtlandingstroepen werden ingezet om te helpen bij de opmars. De andere kant van het schiereiland werd bereikt op 18 juni. Hitler vertelde de Duitse troepen niet terug te trekken naar de sterke versterkingen van de Atlantikwall in Cherbourg. De bevelhebber van Cherbourg, luitenant-generaal Karl-Wilhelm von Schlieben, gaf zich op 26 juni over. Voordat hij zich overgaf, liet hij de meeste faciliteiten vernietigen en maakte zo de haven onbruikbaar tot half augustus. Tegen die tijd was het gevechtsfront zo ver naar het oosten opgeschoven dat de haven minder nuttig was.
Caen
Terwijl de Amerikanen naar Cherbourg trokken, trok een eenheid troepen onder leiding van de Britten richting Caen. Montgomery voerde vele uitputtingsoorlogsaanvallen uit. De eerste was Operation Perch, die zuidwaarts trok van Bayeux naar Villers-Bocage, waar de pantsers Caen konden veroveren. De aanval werd gestopt bij de Slag om Villers-Bocage. Caen werd gebombardeerd en vervolgens bezet ten noorden van de rivier de Orne in Operatie Charnwood van 7 tot 9 juli. Van 18 tot 21 juli volgde een aanval in de omgeving van Caen met alle drie de Britse pantserdivisies, onder de codenaam Operatie Goodwood. De aanval veroverde het hooggelegen terrein ten zuiden van Caen. De rest van de stad werd veroverd door Canadese troepen tijdens Operatie Atlantic. Een volgende operatie, Operatie Spring, van 25 tot 28 juli, door de Canadezen stelde een beperkt gebied ten zuiden van de stad veilig, maar met veel doden en gewonden.
Uitbraak uit strandhoofd
Montgomery's plan hield in dat hij de Duitsers in het oostelijke deel van het invasiegebied moest houden en de positie van Cobra moest beschermen. Tegen het einde van Goodwood hadden de Duitsers de laatste van hun reservedivisies gebruikt. Er waren zes-en-een-half Panzer divisies tegen de Britten en de Canadezen, vergeleken met de anderhalf tegen de Amerikanen.
Operatie Cobra werd op 25 juli gelanceerd door het Amerikaanse Eerste Leger. Deze was succesvol en het VIIIe Korps trok op 28 juli Coutances aan de westkant van het schiereiland Cotentin binnen, nadat het door de Duitse linies was gebroken.
Op 1 augustus werd het VIIIe Korps onderdeel van het Derde Leger van luitenant-generaal George S. Patton. Op 4 augustus wijzigde Montgomery het invasieplan door een korps te sturen om Bretagne te bezetten en de Duitse troepen rond de havens te duwen, terwijl de rest van het Derde Leger verder oostwaarts trok. Vanwege het grote aantal Duitse troepen ten zuiden van Caen verplaatste Montgomery de Britten naar het westen en lanceerde van 30 juli tot 7 augustus Operatie Bluecoat om de aanvallen van de Amerikanen aan te vullen. Dat duwde de Duitse troepen naar het westen en maakte de start van Operatie Totalize ten zuiden van Caen op 7 augustus mogelijk.
Falaise zak
Begin augustus kwamen meer Duitse reserves beschikbaar. De Duitse troepen werden omsingeld, en het Duitse opperbevel wilde die reserves om te helpen bij een terugtocht naar de Seine. Hitler eiste een aanval bij Mortain op 7 augustus. De aanval werd teruggedrongen door de geallieerden, die opnieuw vooraf waren gewaarschuwd door de Ultra codebrekers. Het oorspronkelijke geallieerde plan was om de Duitsers te omsingelen tot aan de Loire-vallei. Bradley realiseerde zich dat veel van de Duitse troepen in Normandië niet meer konden bewegen. Hij kreeg op 8 augustus telefonisch toestemming van Montgomery om de Duitse troepen te omsingelen. De taak werd overgelaten aan Patton, die vrijwel zonder tegenstand door Normandië trok. De Duitsers bleven achter in de buurt van Chambois. Sterke Duitse verdediging en het sturen van Amerikaanse troepen voor een aanval van Patton richting de Seine bij Mantes voorkwamen dat de Duitsers ingesloten raakten tot 21 augustus, toen 50.000 Duitse troepen.
Of dat eerder had gekund en er meer gevangenen hadden kunnen worden genomen, is ter discussie gesteld.
De bevrijding van Parijs volgde kort daarna. Het Franse verzet in Parijs kwam op 19 augustus in opstand tegen de Duitsers. De Franse 2e Pantserdivisie, onder generaal Philippe Leclerc, aanvaardde samen met de Amerikaanse 4e Infanteriedivisie de overgave van de Duitse troepen aldaar en bevrijdde Parijs op 25 augustus.
Terugtrekken naar Seine
De operaties in de Britse en Canadese sector gingen door tot het einde van de maand. Op 25 augustus vocht de 2e Amerikaanse Pantserdivisie zich een weg naar Elbeuf en maakte daar contact met Britse en Canadese pantserdivisies. De 2e Canadese Infanteriedivisie rukte in de ochtend van 27 augustus op naar het Forêt de la Londe. Het gebied was sterk bezet en de 4de en 6de Canadese Brigades hadden gedurende drie dagen grote aantallen doden en gewonden toen de Duitsers hun positie verdedigden. De Duitsers trokken zich op de 29ste terug en trokken zich op de 30ste over de Seine terug.
Op de 30ste stak de 3rd Canadian Infantry Division de Seine over bij Elbeuf en kwam Rouen binnen met een vrolijk onthaal.