Перед самым началом войны испанцам, согнав поддерживавших партизан мирных жителей в концентрационные лагеря, удалось почти полностью подавить восстание на Кубе. А вот с восстанием на Филиппинах Мадрид так и не успел справиться, и борьбу с ним впоследствии продолжили американские оккупационные войска.
Практически все сражения испано-американской войны развернулись на море. Преимущество американского флота было подавляющим. Испания располагала 1 броненосцем, 7 броненосными крейсерами, 5 тяжелыми крейсерами (водоизмещением свыше 3 тыс. т) и 8 легкими крейсерами (водоизмещением менее 3 тыс. т). У США было 4 броненосца, 3 броненосных крейсера, 11 тяжелых и 8 легких крейсеров. У американцев было преимущество и по общему водоизмещению флота — 116 тыс. т против 56 тыс. т. Главное же, американские суда превосходили испанские почти по всем показателям. Артиллерия американского флота была в 2,5 раза мощнее и обладала большей скорострельностью. Испанские броненосные крейсера превосходили по скорости американские, но все остальные классы кораблей значительно уступали в скорости противнику. Кроме того, испанские суда были более старой постройки. Большинство из них нуждалось в ремонте и не было готово к немедленному ведению боевых действий. Американские суда имели также более надежную броневую защиту.
Не сопоставимы были и финансовые возможности сторон. У испанской казны не хватало средств даже для закупки угля для нужд флота. Существенную роль играло то, что основной театр войны в Вест-Индии находился в шесть раз ближе к атлантическому побережью США, чем к берегам Испании. У испанского Главного штаба вообще не было плана Войны против Америки. В день начала войны, 21 апреля, основная испанская эскадра под командованием адмирала Серверы находилась на островах Зеленого Мыса. Адмирал не имел даже карт Вест-Индии и не знал особенностей местных портов. Он писал в Мадрид: «Я очень сожалею, что мне приходится отправляться в море, не сговорившись заранее относительно какого-либо плана, хотя бы в общих чертах. Об этом я несколько раз хлопотал, прося разрешения съездить в Мадрид. Мы не должны обманывать себя относительно силы нашего флота. Мы не должны предаваться иллюзиям». Однако военный совет решил немедленно отправить эскадру Северы в Вест-Индию, не дожидаясь, когда вступят в строй находившиеся в ремонте броненосец и три тяжелых крейсера. В поход пошли 4 броненосных крейсера и 3 миноносца.
Первое крупное морское сражение произошло, однако, не в Атлантике, а на Тихом океане. Здесь эскадра американского адмирала Девея уже в марте была сосредоточена в Гонконге и заранее запаслась углем, продовольствием и боеприпасами. Она двинулась к Филиппинским островам. Испанский адмирал Монтено собирался обороняться на позиции у входа в бухту Сюби, угрожая тылу американской эскадры, идущей к Маниле, однако по настоянию командования гарнизона филиппинской столицы он вынужден был отвести корабли ближе к городу, чтобы предотвратить его бомбардировку американскими судами.
1 мая состоялось первое и последнее сражение между эскадрами Девея и Монтено у мыса Кавите. Оно началось в 5 часов 12 минут утра, когда американцы открыли огонь по стоящей на якоре эскадре Монтено. К 8 часам утра почти все испанские корабли были подожжены артиллерийским огнем, и Девей объявил перерыв на завтрак.
К полудню была уничтожена уже вся испанская эскадра. В предвоенные годы испанцы пренебрегали подготовкой комендоров, и стрельба их корабельной артиллерии была из рук вон плоха. В американские корабли попало всего 7 снарядов, ранивших 6 матросов. После этого вблизи Манилы высадился 27-тысячный экспедиционный корпус, три месяца спустя, 13 августа, в день заключения мирного договора, принудивший гарнизон к сдаче.
В Вест-Индии американская эскадра адмирала Семпсона блокировала Гавану и все северное побережье Кубы. Южное побережье острова с портами Сьенфуэгос и Сантьяго американцы заблокировать не смогли из-за удаленности от баз американского флота. 19 мая в Сантьяго прибыла после долгого перехода испанская эскадра адмирала Серверы. Через 6 дней американцы узнали об этом. Попытка запереть вход в бухту путем затопления старого угольщика не удалась. Судно затонуло не там, где планировалось, а семь американских матросов и офицеров, находившиеся на нем, попали в плен.
5 июня американцы высадили десант вблизи Сантьяго, соединившийся с 3-тысячным отрядом кубинских повстанцев. 6 июня была предпринята мощная бомбардировка Сантьяго, в ходе которой испанцы потеряли 9 человек убитыми и 35 ранеными. 7 июня отряд из 620 американских морских пехотинцев занял порт Гуантанамо. 15 июня последовала высадка основных сил 27-тысячного экспедиционного корпуса. Он был переброшен на 35 транспортных судах под охраной броненосца и 4 крейсеров. Высадка прошла очень неорганизованно и затянулась на несколько дней. В первый день удалось высадить только 6 тысяч человек. Почти полностью отсутствовало взаимодействие между армией и флотом. Американские корабли утратили боевой порядок и часто мешали друг другу. Армейские начальники, руководившие десантом, плохо представляли себе, как надо перебрасывать солдат на берег с помощью шлюпок. Однако испанцы не решились напасть на американский флот, хотя такое нападение могло привести к тяжелым потерям среди экспедиционного корпуса.