Между городами Алессандрией и Тортоной лежит большая равнина, посреди которой и находится деревушка Маренго. Зимой 1800 года Наполеон, просматривая карты, указал пальцем именно на это место и сказал, что здесь французы должны разбить австрийцев. Тем более удивительно, что Бонапарт оказался не очень готов к встрече с войсками Меласа. Будучи уверенным в том, что противник движется в другом направлении, Наполеон 13 июня послал две дивизии, которыми командовал генерал Луи Дезе, разведать пути отступления неприятеля и, по возможности, отрезать эти пути. Появление же основных и при этом наступающих австрийских сил у Маренго, вероятно, несколько смутило великого полководца. У Бонапарта в это время было лишь 20 тысяч человек и небольшая часть артиллерии (пушки продолжали спускать с Альп, часть артиллерии была отдана генералу Дезе; поэтому в распоряжении Наполеона оставалось всего около полутора десятков орудий). У Меласа же утром 14 июня 1800 года было 30 тысяч человек, большое преимущество в артиллерии (у австрийцев было 100 пушек) и кавалерии.
Перейдя реку Бормида, австрийцы начали наступление двумя колоннами. Правой, двигавшейся по дороге на Маренго, командовал сам барон Мелас. Его противником на левом фланге французских войск был генерал Виктор, располагавший 15 тысячами солдат. Наступлением левой австрийской колонны на Кастель Чериоло руководил фельдмаршал Отт. В его распоряжении было семь с половиной тысяч солдат, в то время как у его визави Ланна было лишь четыре тысячи.
Французы заняли позицию у ручья Фантаноне и стали отбивать яростные атаки противника. Но, несмотря на стойкость французов, австрийцам удалось их потеснить. Ручей был форсирован, австрийцы заняли Маренго. Еще через некоторое время французы сдали Кастель Чериоло. Части Виктора в это время уже откатились к Сан-Джулиано.
Наполеон бросал в бой резервы. Так, корпус Моньера (три с половиной тысячи человек) на время вернул Кастель Чериоло, но через час (около 3 часов дня) был вновь отброшен оттуда. Не решили исход боя и 800 гренадеров Консульской гвардии. Началось общее отступление французской армии, которое прикрывали Ланн и гвардейцы Наполеона. Его, как и предыдущую оборону, можно назвать героическим. Отступающий корпус Ланна прошел 4 километра под шквальным огнем австрийской артиллерии, отражая постоянные атаки пехоты и кавалерии. Однако битва была очевидно проиграна. Мелас послал гонца в Вену с радостным сообщением о достигнутой победе, захваченных трофеях, отступлении французов. Австрийский командующий счел возможным покинуть поле боя и оставить для продолжения и завершения наступления своего начальника штаба Заха.
Канонада начала стихать, некоторые австрийские отряды стали останавливаться и разбивать лагеря. Надежда у французов была только на наступление темноты, которая дала бы им передышку и возможность без потерь покинуть поле боя. Однако оказалось, что до конца еще далеко. В начале четвертого часа на арене боевых действий появилась дивизия генерала Дезе. В первой половине дня Дезе, двигавшийся с колонной для того, чтобы отрезать мнимому неприятелю путь от Генуи, услыхал позади канонаду и приказал немедленно развернуть колонну и быстрым маршем идти на гул орудий. Встретившийся по пути курьер Наполеона, которому было приказано спешно возвратить генерала, подтвердил подозрения Дезе. Появившись на поле боя, генерал обратился к консулу со словами: «Мы проиграли первую битву, но у нас еще есть время для второй». Наполеон и Дезе быстро привели в порядок войска. Теперь армия была собрана в один кулак. Вперед выдвинулись орудия Мармона и орудия Дезе и начали обстреливать неприятельские ряды. Около пяти часов вечера из-за этой батареи начали стремительную атаку на центральную австрийскую колонну Заха свежие войска Дезе. Сам генерал был убит в начале этой атаки, однако его солдатам удалось прорвать австрийские ряды. В нужный момент к атаке подключились драгуны французского генерала Келлермана: при артиллерийской поддержке кавалерия Келлермана расстроила австрийский центр. В плен попал Зах и еще две тысячи человек, драгуны с консульскими гвардейцами ударили и опрокинули неприятельскую кавалерию. Следующую волну наступающих возглавили Ланн, Виктор и Моньер. Здесь уже проявилась традиционная тактика наполеоновских войск – атаки колоннами, с постоянной подпиткой боя из глубины, создание мощного давления на главном участке боя.