日本联合舰队为实施此次战役,动用舰艇包括运输舰、辅助舰在内共200余艘,其中航空母舰8艘(舰载机400多架)、战列舰11艘、巡洋舰23艘、驱逐舰56艘、潜艇24艘,由联合舰队司令长官山本五十六海军大将统一指挥。5月26~29日,各编队先后由本土起航,预定于6月4日对中途岛发起进攻。
不过,在5月中旬,美军就已经通过破译日本海军密码电报而掌握了日本进攻中途鸟的企图。尼米兹集中航空母舰3艘(舰载机230多架)及其他作战舰艇约40多艘,组成第16特混舰队和第17特混舰队,在中途岛东北海域展开,隐蔽待机。与此同时,19艘潜艇部署在中途岛附近海域,监视日舰行动。
6月3日,细萱戍子郎海军中将率北方编队(航空母舰2艘、舰载机82架、其他作战舰艇29艘)对阿留申群岛的荷兰港发起突击。4日凌晨,南云忠一海军中将率第一机动编队(航空母舰4艘、舰载机260多架、其他作战舰艇17艘)进至中途岛西北240海里海域,4时30分派出第一波飞机108架飞往中途岛。岛上美军发出警报,飞机升空迎敌,展开激战。日军轰炸机袭击机场,炸毁部分地面设施。由于岛上防御得到加强,机场跑道未被摧毁。在此期间,南云的机动编队多次受到美军岸基飞机的侦察、袭扰和攻击。南云遂决定再次攻击中途岛。7时15分,美军岸基鱼雷机结束攻击,南云却下令已挂上鱼雷准备攻击美国航空母舰的第二波飞机改装炸弹攻击中途岛。7时28分,日军侦察机报告发现美国舰队。此时,在中途岛东北海域待机的美国特混舰队正向日机动编队接近,并已派出第一、第二波飞机200多架。8时20分,日本侦察机报告美国舰队似有一艘航空母舰。南云于是命令攻击中途岛的第一波飞机和担任空中战斗巡逻任务的战斗机返航,随后率领舰队北驶,以免遭到袭击,并重新部署对敌舰队的攻击。约9时20分~10时26分,正当日军第二波飞机正在卸下炸弹、重挂鱼雷的混乱之际,美国舰载鱼雷机和俯冲轰炸机连续攻击南云的航空母舰。日方虽有部分战斗机临空迎战,但为时已晚。日军损失航空母舰4艘(“赤城号”“加贺号”“苍龙号”“飞龙号”)、重巡洋舰1艘、飞机285架,人员3500名;美军损失航空母舰1艘(“约克敦号”)、驱逐舰1艘、飞机约150架,人员307名。鉴于第一机动编队损失惨重,山本于5日下令停止中途岛作战,率联合舰队西撤。美军乘势追击,于6日派舰载机三次出击,又击沉日军重巡洋舰1艘,击伤巡洋舰、驱逐舰数艘。