En stor styrke av soldater og frivillige samlet seg i nærheten av Tampa i Florida for å forberede en invasjon av Cuba. Etter lange forsinkelser og utbedringer av forsynlingslinjene kunne hæren, ledet av generalmajor William Rufus Shafter, seile fra Florida den 20. juni og gå i land i nærheten av Santiago de Cuba to dager senere. Etter en mindre trefning ved Las Guasimas den 24. juni kom de i kamp med spanske styrker ved San Juan den 24. juli. Begge sider led store tap, men amerikanerne gikk seirende ut. Dagen etter seilte Spanias karibiske skvadron ut fra Santiago med kurs for åpent hav, men ble avskåret og senket av kontreadmiral William T. Sampsons nordatlantiske skvadron i krigens største sjøslag. Shafters hær beleiret Santiago, som overgav seg den 17. juli og i praksis gjorde at Cuba var under amerikansk kontroll. McKinley og Miles beordret også en invasjon av Puerto Rico, som møtte liten motstand. Avstanden til Spania og senkingen av den spanske flåtestyrken gjorde at overføring av nye forsyninger ble umulig, så den spanske regjeringen begynte å se seg om etter en måte å avslutte krigen på.