Против войны выступила и оппозиционная партия вигов. Газеты вигов писали: «Всему миру известно, что мы обманули Мексику, что мы — грабители… Кто добровольно вступает в армию или голосует за ассигнование хотя бы одного доллара на войну, предает… права человечества. Всякий житель Соединенных Штатов, достойный американской свободы, должен драться на стороне мексиканцев и низвергнуть подлых, низких… корыстных захватчиков». Принадлежавший тогда к партии вигов А. Линкольн обвинил президента Полка и заявлял, что «кровь, пролитая в этой войне, обличает его, подобно крови Авеля».
Однако, несмотря на эти заявления, все виги в конгрессе поддержали расходы на войну. Объясняя свою позицию, Линкольн говорил: «Возможно, что вам покажется вторжение армии в мирные мексиканские поселения, которое сопровождалось запугиванием населения, уничтожением их посевов, дружелюбной, мирной процедурой. Но нам это так не представляется… Однако коль скоро война началась и стала делом нашей страны… мы не можем выступить против войны». Эта противоречивая позиция вигов способствовала тому, что правительство Полка могло уверенно вести военные действия против Мексики.
Полк смог объединить усилия страны на войне против Мексики и благодаря тому, что им был своевременно преодолен кризис в англо-американских отношениях относительно границы на северо-западе страны. Воевать против Мексики и Великобритании одновременно США не могли. Кроме того, Полк прекрасно понимал, что одно дело воевать против слабой латиноамериканской страны, а другое дело — связаться с могучей Британской империей. В обстановке военной шумихи, вызванной началом войны с Мексикой, Полк смог убедить конгресс пойти на компромисс с Англией и согласиться на границу по 49-му градусу северной широты, а не по 54-му градусу 40-й минуте. В июне конгресс дал полномочия президенту для подписания такого договора, который был подписан 15 июня.
Война еще не началась, а американцы, проживавшие в Калифорнии, провозгласили там независимую республику 15 июня 1846 года и подняли ее флаг с изображением медведя. 23 июня в Калифорнию вошли американские войска во главе с капитаном Фремонтом. 7 июля коммодор Слоут отдал приказ американским судам овладеть Сан-Франциско. В считаные дни американцы овладели севером Калифорнии.
В этой войне силы были неравными. Американские войска насчитывали 115 тысяч солдат, мексиканские — от 18 до 40 тысяч. Американцы были лучше вооружены: у них были современные винтовки, произведенные на американских оружейных заводах. Мексиканцы же использовали британские мушкеты времен наполеоновских войн.
Слабости мексиканской армии усугублялись политической нестабильностью в стране. Фактически армия была расколота на «централистов» и «республиканцев», между которыми не прекращались стычки. В ходе войны в Мексике произошел очередной переворот, и президентом вновь стал Санта-Ана. И все же, несмотря на слабости мексиканцев и свои преимущества, американские войска под командованием 3. Тейлора лишь после тяжелых боев сумели продвинуться в глубь мексиканской территории.
Решительный поворот в войне произошел после высадки десанта из 12 тысяч американских солдат под командованием генерала Скотта в районе порта Вера-Круз в марте 1847 года. Разрушив город с помощью артиллерии после 12-дневного обстрела, в ходе которого погибли тысячи мирных жителей, американцы взяли Вера-Круз. После этого Скотт 1 мая взял город Пуэбла, второй по величине город в тогдашней Мексике.
В сентябре начались бои за Мехико. По свидетельству очевидцев, в окрестностях мексиканской столицы «поля были покрыты тысячами трупов людей, частями лошадей и мулов… Четыре тысячи мексиканцев лежали убитыми и ранеными. Три тысячи были взяты в плен… Американцы потеряли около одной тысячи убитыми, ранеными или пропавшими без вести». 14 сентября войска Скотта вошли в столицу страны, а сам Скотт провозгласил себя губернатором Мехико.
2 февраля 1848 года был подписан мирный договор, по которому Мексика уступала Соединенным Штатам Калифорнию, Аризону, Техас, Нью-Мексико, на долю которых приходилась половина территории страны. Так как в 1846 году был достигнут компромисс с Англией по вопросу об Орегоне, то теперь американская территория шла широкой полосой от Атлантического до Тихого океанов. Планы экспансионистов были реализованы.
Однако победа была достигнута немалой ценой. Как отмечалось в «Википедии», хотя в боях американцы потеряли лишь 1700 человек, т. е. около 1,5 % личного состава, свыше 11,5 тысячи (10 % личного состава) погибли от разных болезней, особенно от желтой лихорадки. К тому же около 12 % были ранены или уволены из-за болезней. В «Википедии» говорилось, что «ветераны Мексиканской войны продолжали страдать от тяжелых болезней, полученных в ходе войны. Поэтому число потерь можно довести до 25 % в первые 17 месяцев войны. Общее число потерь, возможно, достигло 35–40 %, если принять во внимание смерти, вызванные ранениями или болезнями в последующие годы. В этом отношении эта война стала самой тяжелой за всю американскую историю». Следует учесть, что в ходе войны американцами было убито около 25 тысяч мексиканских солдат, что составляло более половины всей армии страны.