Wstępne ataki powietrzne
Około 09:00 3 czerwca samolot patrolowy Marynarki Wojennej USA zauważył Japońskie Siły Okupacyjne 500 mil morskich (580 mil; 930 kilometrów) na zachód-południowy zachód od Midway. Trzy godziny później Amerykanie znaleźli japońską grupę transportową 570 mil morskich (660 mil; 1 060 kilometrów) na zachód. Zaatakowali, ale żadna z bomb nie trafiła i nie spowodowało to większych szkód. Wczesnym rankiem następnego dnia japoński tankowiec Akebono Maru został trafiony torpedą z atakującej PBY. Był to jedyny udany atak torpedą wystrzeloną z powietrza przez USA w ciągu całej bitwy.
O 04:30 4 czerwca Nagumo przypuścił atak na Midway. Składał się z 36 bombowców nurkujących 36 torpedowych, eskortowanych przez 36 myśliwców Mitsubishi Zero. W tym samym czasie wystrzelił defensywny patrol powietrzny bojowy. Jego osiem samolotów poszukiwawczych wystartowało z 30-minutowym opóźnieniem.
Japońskie plany zwiadowcze były słabe, a samolotów było zbyt mało, by pokryć obszary poszukiwań. Decyzje Yamamoto stały się teraz poważnym problemem.
Kiedy bombowce i myśliwce Nagumo startowały, 11 PBY-ów opuszczało Midway w poszukiwaniu japońskich statków. Zgłosili, że zauważyli dwa japońskie lotniskowce z pustymi pokładami, co oznaczało, że zbliża się atak powietrzny. Amerykański radar wykrył wroga w odległości kilku mil, a samoloty zostały wysłane do obrony Midway. Bombowce wyruszyły, by zaatakować japońską flotę lotniskowców. Amerykańskie myśliwce pozostały w tyle, by bronić Midway. O 06:20 japoński samolot lotniskowiec zbombardował i poważnie uszkodził amerykańską bazę. Piloci myśliwców z Midway, latający F4F i przestarzałymi F2A, przechwycili Japończyków i ponieśli wiele strat. Większość amerykańskich samolotów została zestrzelona w ciągu pierwszych kilku minut; kilka z nich zostało uszkodzonych, a tylko dwa mogły latać. W sumie zestrzelono 3 F4F i 13 F2A. Amerykański ogień przeciwlotniczy celnie uszkodził wiele japońskich samolotów i zniszczył cztery.
Spośród 108 japońskich samolotów biorących udział w tym ataku, 11 zostało zniszczonych, 14 zostało poważnie uszkodzonych, a 29 zostało uszkodzonych. Wstępny atak Japończyków nie zniszczył Midway: Amerykańskie bombowce wciąż mogły wykorzystać bazę powietrzną do zatankowania i zaatakowania japońskich sił inwazyjnych. Większość obrony lądowej Midway była nienaruszona. Kolejny atak powietrzny mający na celu zniszczenie obrony Midway byłby konieczny, gdyby wojska mogły zejść na ląd do 7 czerwca.
Amerykańskie bombowce bazujące na Midway dokonały kilku ataków na japońską flotę transportowców. Było wśród nich sześć Grumman Avengers z VT-8 Horneta (Midway był pierwszą misją bojową dla lotników VT-8 i pierwszą walką TBF), Marine Scout-Bombing Squadron 241 (VMSB-241), składający się z jedenastu SB2U-3 i szesnastu SBD oraz czterech USAF B-26, uzbrojonych w torpedy i piętnastu B-17. Japończycy odepchnęli te ataki. USA straciło dwa myśliwce, pięć TBF-ów, dwa SB2U, osiem SBD-ów i dwa B-26-y.
Jeden B-26, po poważnym uszkodzeniu przez ogień przeciwlotniczy, pojechał prosto w kierunku Akagi. Samolot po prostu przegapił mostek transportera, co mogło zabić Nagumo i jego sztab dowodzenia. To mogło spowodować, że Nagumo zdecydował się na kolejny atak na Midway, przeciwko rozkazowi Yamamoto, aby utrzymać siły rezerwowe dla operacji antystatkowych.
Decyzja Nagumo
Admirał Nagumo trzymał w rezerwie połowę swoich samolotów. Były to dwie eskadry bombowców nurkowych i torpedowych. O 07:15 Nagumo rozkazał przezbroić swoje rezerwowe samoloty bombami do użycia przeciwko celom lądowym. O 07:40 samolot zwiadowczy z Tone'a widział na wschodzie duże amerykańskie siły morskie. Wygląda na to, że Nagumo otrzymał raport dopiero o 08:00. Nagumo wycofał swój rozkaz, ale minęło 40 minut, zanim zwiadowca Tone'a w końcu poinformował, że w amerykańskich siłach jest lotniskowiec. To był jeden z lotniskowców z TF 16, drugiego nie widziano.
Nagumo nie był teraz pewien, co robić. Kontradmirał Tamon Yamaguchi polecił Nagumo uderzyć siłami pod ręką: 18 bombowców nurkujących Aichi D3A, każdy na Sōryū i Hiryū, oraz połowa osłonowych samolotów patrolowych. Jednak możliwość trafienia przez Nagumo amerykańskich statków była teraz ograniczona. Siły uderzeniowe Midway wkrótce powrócą i będą musiały wylądować lub rozbić się w morzu. Ze względu na stałą aktywność w kokpicie, Japończycy nie dostali do startu swoich samolotów rezerwowych. Kilka samolotów, które były gotowe, było defensywnymi samolotami Fighter. Wystrzelenie samolotu wymagałoby co najmniej 30 do 45 minut. Wystrzeliwując od razu, Nagumo używałoby części swojego rezerwowego samolotu bez odpowiedniej broni antystatkowej. Właśnie widział, jak łatwo zestrzelić amerykańskie bombowce bez eskorty. Zła dyscyplina spowodowała, że wiele japońskich bombowców pozbyło się swoich bomb i próbowało walczyć z przechwyceniem F4F. Japońskie zasady lotniskowca preferowały pełne uderzenia, a ponieważ Nagumo nie wiedział, że w skład amerykańskich sił wchodzi lotniskowiec, jego odpowiedź była zgodna z japońskimi zasadami. Ponadto, przybycie kolejnego amerykańskiego nalotu o 07:53 sprawiło, że Nagumo ponownie chciało zaatakować wyspę. Nagumo postanowił poczekać na lądowanie swoich pierwszych sił uderzeniowych, a następnie uruchomić rezerwat, który do tego czasu będzie uzbrojony i gotowy.
Przewoźnicy Fletchera wystrzelili swoje samoloty od 07:00, więc samoloty, które zaatakowały Nagumo, były już w drodze. Nagumo nie było w stanie nic z tym zrobić. To była wada planów Yamamoto.
Ataki na japońską flotę
Amerykanie wystrzelili już swoje lotniskowe samoloty przeciwko Japończykom. Admirał Fletcher, dowodzący na pokładzie Yorktown, i mając od rana raporty z obserwacji PBY, zarządził jak najszybszy atak na Japończyków. Trzymał Yorktown w rezerwie na wypadek, gdyby inne japońskie lotniskowce zostały znalezione. (Kierunek Fletchera do Spruance'a wysłał Nimitz, który pozostał na lądzie).
Spruance uważał, że nawet jeśli zasięg był daleki, atak może się udać. Wydał rozkaz przeprowadzenia ataku około 06:00. Fletcher, po zakończeniu własnych lotów zwiadowczych, udał się o 08:00 z Yorktown.
Admirał Fletcher, dowodzący grupą zadaniową Yorktown, wraz z kapitanem Elliottem Buckmasterem, dowódcą Yorktown, i ich sztabem mieli doświadczenie w pełnym uderzeniu na wroga na Morzu Koralowym. Ale nie mogli przekazać tego, czego się nauczyli, Enterprise i Hornetowi, którym kazano przeprowadzić pierwsze uderzenie. Spruance rozkazał, aby samolot natychmiast udał się do celu, ponieważ niszczenie lotniskowców wroga było ważne dla bezpieczeństwa jego statków. Spruance zdecydował, że ważniejszy jest jak najszybszy atak, niż koordynowanie ataku przez samoloty różnych typów i prędkości (myśliwce, bombowce i bombowce torpedowe). Amerykańskie eskadry poszły do celu w kilku różnych grupach. Miał nadzieję, że znajdzie Nagumo z pokładami pełnymi samolotów.
Samoloty amerykańskiego przewoźnika miały trudności z zlokalizowaniem celu. Atak z Hornet, prowadzony przez komandora Stanhope'a C. Ringa, nie leciał we właściwym kierunku. Bombowce nurkowe Air Group Eight ominęły japońskie lotniskowce. Szwadron Torpedowy 8 leciał we właściwym kierunku. Jednak 10 F4F z Horneta zabrakło paliwa i musiał rozbić się o ocean. Eskadra Waldrona zobaczyła lotniskowce wroga i zaczęła atakować o 9:20, a następnie Dywizjon Torpedowy 6 (VT-6, z Enterprise), którego eskorta myśliwców Wildcat również skończyła się paliwem i musiała zawrócić o 9:40. Bez eskorty myśliwców, wszystkie piętnaście TBD Devastators z VT-8 zostało zestrzelonych bez możliwości wyrządzenia żadnych szkód, a jedynym ocalałym był chorąży George Gay. VT-6 stracił 10 z 14 Devastatorów, a 10 z 12 Devastatorów Yorktown VT-3 zostało zestrzelonych bez trafienia. Częścią problemu były słabe osiągi torped Mark 13. Starsi oficerowie Marynarki Wojennej i Biura Obrony nigdy nie pytali, dlaczego sześć torped, wystrzelonych tak blisko japońskich lotniskowców, nie dało żadnych trafień. Japoński patrol lotnictwa bojowego, latający Mitsubishi A6M2 Zeros, zestrzelił bez eskorty, powolne, nieuzbrojone torpedy TBD. Kilku TBD-om udało się zbliżyć na tyle blisko, by zrzucić torpedy i wystrzelić karabiny maszynowe w kierunku wrogich statków. To sprawiło, że japońskie lotniskowce wykonały ostre zakręty. TBD Devastator nigdy więcej nie był używany w walce.
Pomimo braku trafień, amerykańskie ataki torpedowe sprawiły, że japońskie lotniskowce nie były w stanie przygotować się i przeprowadzić własnego ataku. Wyciągnęli też z pozycji japoński patrol powietrzny (CAP). Również wiele Zero zabrakło amunicji i paliwa. Pojawienie się trzeciego ataku torpedowego z południowego wschodu przez Dywizjon Torpedowy 3 (VT-3 z Yorktown) o godzinie 10:00 sprawiło, że japońska CAP poleciała do południowo-wschodniego narożnika floty. Lepsza dyscyplina i wykorzystanie większej ilości zer do CAP mogło pozwolić Nagumo zapobiec obrażeniom spowodowanym przez nadchodzące ataki amerykańskie.
Trzy dywizjony SBD z Enterprise i Yorktown (odpowiednio VB-6, VS-6 i VB-3) zbliżały się z południowego zachodu i północnego wschodu. Dwóm eskadrom z Enterprise brakowało paliwa z powodu czasu spędzonego na szukaniu wroga. Jednak dowódca eskadry postanowił kontynuować poszukiwania. Zauważył japoński niszczyciel Arashi. Po nieudanym doładowaniu amerykańskiego okrętu podwodnego Nautilus do lotniskowców Nagumo. Nautilus wcześniej bezskutecznie zaatakował pancernik Kirishima. Niektóre bombowce zostały utracone z braku paliwa przed rozpoczęciem ataku.
Decyzja McClusky'ego o kontynuowaniu poszukiwań była wielką pomocą dla amerykańskiej grupy zadaniowej ds. lotniskowców i sił w Midway. Wszystkie trzy amerykańskie eskadry bombowców nurkowych (VB-6, VS-6 i VB-3) przybyły w odpowiednim czasie do ataku. Większość japońskiej CAP szukała samolotów torpedowych. Uzbrojone japońskie samoloty szturmowe wypełniły pokłady hangarów, na pokładach leżały węże paliwowe, a bomby i torpedy znajdowały się w pobliżu hangarów, przez co japońskie lotniskowce były bardzo narażone na uszkodzenia.
Od 10:22, dwie eskadry grupy powietrznej Enterprise rozdzieliły się i zaatakowały dwa cele. Przez przypadek, obie grupy zaatakowały Kagę. Komandor porucznik Richard Halsey Best i dwa inne samoloty udały się na północ, by zaatakować Akagi. Podczas ataku z prawie dwóch pełnych eskadr, Kaga został trafiony czterema lub pięcioma bombami, które spowodowały ciężkie uszkodzenia i rozpoczęły pożary, których nie można było ugasić. Jedna z bomb wylądowała w pobliżu mostu, zabijając większość starszych oficerów.
Kilka minut później, Best i dwa samoloty gołębiły się na Akagi. Chociaż Akagi dostał jedno bezpośrednie trafienie (zrzucone przez Dowódcę Porucznika Besta). Uderzył w windę pokładową i przeszedł aż do górnego pokładu hangaru. Wybuchł wśród uzbrojonych i zatankowanych samolotów. Pod wodą wybuchła kolejna bomba, która wygięła pokład i spowodowała uszkodzenie steru.
Yorktown's VB-3, dowodzony przez Maxa Leslie, zaatakował Sōryū. Dostali co najmniej trzy trafienia i wyrządzili spore szkody. VT-3 celował w Hiryū, ale nie dostał żadnych trafień.
W ciągu sześciu minut, Sōryū i Kaga płonęli. Akagi również został poważnie uszkodzony. Japończycy mieli nadzieję, że Akagi zostanie uratowany lub odholowany z powrotem do Japonii. Ostatecznie wszystkie trzy transportery zostały opuszczone i zatopione.
Kontrataki japońskie
Hiryū, jedyny ocalały japoński lotniskowiec, zaatakował. Pierwszy atak Hiryū składał się z 18 bombowców nurkowych i sześciu eskort myśliwców. Podążyli za wycofującym się amerykańskim samolotem i zaatakowali Yorktown, uderzając w nią trzema bombami, które wywaliły dziurę w pokładzie, zgasiły jej kotły, zniszczyły kilka dział przeciwlotniczych. Mimo zniszczeń, ekipy naprawcze były w stanie naprawić pokład i naprawić kilka kotłów w ciągu godziny. Dwanaście japońskich bombowców nurkujących i cztery myśliwce eskortujące zostały utracone w tym ataku.
Około godziny później doszło do drugiego ataku Hiryū. Składał się on z dziesięciu bombowców torpedowych i sześciu eskortujących A6M. Amerykańskie wysiłki naprawcze zostały tak dobrze przeprowadzone, że Japończycy założyli, że musi być innym, nieuszkodzonym lotniskowcem. W trakcie ataku w Yorktown uderzyły dwie torpedy; straciła ona całą moc i rozwinęła przechył do portu, co uniemożliwiło jej działanie. Admirał Fletcher przeniósł swój sztab dowodzenia do ciężkiego krążownika Astoria. Żaden z lotniskowców Spruance's Task Force 16 nie został uszkodzony.
Wiadomości o dwóch strajkach, z których każdy zatopił amerykańskiego przewoźnika (w obu przypadkach faktycznie Yorktown), znacznie poprawiły morale w Kido Butai. Na pokładzie Hiryū odzyskano kilka ocalałych samolotów, które były przygotowane do ataku na jedynego amerykańskiego przewoźnika.
Amerykański kontratak
Późnym popołudniem samolot harcerski z Yorktown zlokalizował Hiryū. Enterprise rozpoczął strajk bombowców nurkowych (w tym 10 SBD z Yorktown). Mimo że Hiryū broniło kilkanaście myśliwców Zero, atak Enterprise zakończył się sukcesem: cztery, może pięć bomb trafiło w Hiryū, pozostawiając ją w ogniu i nie mogąc obsługiwać samolotów. Po beznadziejnych próbach opanowania ognia, większość załogi pozostającej na Hiryū została zdjęta z okrętu. Reszta floty dalej płynęła na północny wschód, aby złapać amerykańskich przewoźników. Hiryū pozostała na wodzie jeszcze przez kilka godzin. Została odkryta przez samolot lekkiego lotniskowca Hōshō. Wzbudziło to nadzieję, że uda się ją uratować lub odholować z powrotem do Japonii. Jednak wkrótce po zauważeniu, Hiryū zatonęła. Kontradmirał Yamaguchi zdecydował się zejść na dół swoim statkiem, co kosztowało Japonię jej najlepszego oficera lotniskowca.
Gdy zapadał zmrok, obie strony zastanawiały się nad sytuacją i tworzyły plany działania. Admirał Fletcher musiał opuścić Yorktown. Czuł, że nie może dowodzić z krążownika. Wydał rozkaz Spruance'owi. Spruance wiedział, że Stany Zjednoczone odniosły wielkie zwycięstwo, ale wciąż nie był pewien, jakie siły japońskie pozostały. Chciał chronić Midway i jego lotniskowce. Podążał za Nagumo w ciągu dnia i podążał za nim, gdy zapadła noc. W końcu, obawiając się ewentualnej nocnej bitwy z japońskimi okrętami i wierząc, że Yamamoto nadal zamierza najechać, Spruance wycofał się na wschód. O północy zawrócił na zachód w kierunku wroga. Yamamoto zdecydował się kontynuować ataki i wysłał swoje pozostałe statki na wschód w poszukiwaniu amerykańskich lotniskowców. Wysłał też krążownik rajdowy, by zbombardować wyspę. Japońskie okręty nie nawiązały kontaktu z Amerykanami z powodu decyzji Spruance'a o wycofaniu się na wschód, a Yamamoto rozkazał wycofać się na zachód.
Spruance nie odzyskał kontaktu z siłami Yamamoto 5 czerwca, mimo że przeprowadził wiele poszukiwań. Pod koniec dnia przypuścił atak na wszystkie statki z nagumojskich sił nośnych. To uderzenie ominęło główną grupę statków Yamamoto. Nie trafił w japoński niszczyciel. Samoloty atakujące wróciły do lotniskowców po zapadnięciu zmroku. Spruance kazał Enterprise i Hornetowi włączyć ich światła, aby wspomóc lądowanie.
Przy 02:15 w nocy z 5/6 czerwca, dowódca John Murphy's Tambor, w wodzie 90 mil morskich (100 mil; 170 kilometrów) na zachód od Midway, dokonał drugiego z głównych wkładów sił podwodnych w wynik bitwy. Widząc kilka statków, ani Murphy, ani jego oficer wykonawczy, Ray Spruance, Jr., nie mogli ich zidentyfikować. Biorąc pod uwagę, że mogą to być okręty amerykańskie, Murphy nie strzelał, ale zgłosił je admirałowi Robertowi Englishowi, dowódcy Sił Okrętowych, Floty Pacyfiku (COMSUBPAC). Ten raport został wysłany do Nimitza, który następnie wysłał go do Spruance'a. Spruance założył, że jest to siła inwazyjna i przeniósł się, aby ją zablokować, pozostając 100 mil morskich (120 mil; 190 kilometrów) na północny wschód od Midway.
Statki zaobserwowane przez Tambor były czterema krążownikami i dwoma niszczycielami Yamamoto wysłanymi do zbombardowania Midway. O 02:55 te statki otrzymały rozkaz Yamamoto, aby wycofać się i zmienić kurs. Mniej więcej w tym samym czasie co zmiana kursu, Tambor został zauważony, a aby uniknąć ataku okrętu podwodnego Mogami i Mikuma uderzyły w siebie, powodując poważne uszkodzenia dziobu Mogami. Mniej poważnie uszkodzony Mikuma zwolnił do 12 węzłów (22 km na godzinę; 14 mil na godzinę). Było to największe zniszczenie spośród 18 łodzi podwodnych użytych do walki, jakie udało się osiągnąć. Dopiero o 04:12 niebo rozjaśniło się na tyle, że Murphy miał pewność, że okręty są japońskie, do tego czasu przebywanie na powierzchni było niebezpieczne, a on zanurkował, by podejść do ataku. Atak nie powiódł się i około 06:00 zameldował w końcu dwa krążowniki klasy Mogami-klasy Westbound.
W ciągu następnych dwóch dni, najpierw Midway, a potem przewoźnicy Spruance'a przeprowadzili kilka ataków. Mikuma został zatopiony przez Dauntlessesa, a Mogami przeżył uszkodzenia i wrócił do domu w celu naprawy. Niszczyciele Arashio i Asashio zostali również zbombardowani i ostrzelani maszynowo podczas ostatniego z tych ataków.
Yorktown został odholowany przez USS Vireo. Późnym popołudniem 6 czerwca I-168 wystrzeliły jednak torpedy; dwie uderzyły w Yorktown, a trzecia w niszczyciel USS Hammann, który dostarczał Yorktown mocy. Hammann rozbił się na dwie części, w wyniku czego zginęło 80 osób. Yorktown zatonął tuż po godzinie 05:00 7 czerwca.