Сражение произошло 21–22 мая 1809 года между французской армией Наполеона (77 тыс. человек, включая 10 тыс. кавалеристов) и австрийской армией эрцгерцога Карла (98 250 человек, в том числе 14 250 кавалеристов) на острове Лобау, Вена. 13 мая 1809 года Наполеон вошёл в Вену, но удержать ее не смог. Австрийцы взорвали все мосты в столице и жёстко держали их под прицелом мощных батарей, так что форсировать Дунай в Вене было невозможно. Узнав о подходе значительных сил австрийцев, Наполеон решил форсировать Дунай до подхода австрийской армии в районе острова Лобау, к югу от Вены, и неожиданно напасть на неприятеля. Французские войска должны были построить несколько мостов, переправиться через Дунай и внезапным фронтальным ударом разбить неприятеля. Саперы успели в ночь с 19 на 20 мая перекинуть несколько мостов через Дунай. В полдень 20 мая французская армия начала переправу. К вечеру 20 мая французы сумели переправить на левый берег Дуная 24–30 тыс. человек при 60 орудиях и захватить Асперн и Эсслинг. Карл находился недалеко, но не спешил нападать на Наполеона.
Эрцгерцог Карл, герцог Тешенский, со своим штабом в битве при Асперне и Эсслинге. Художник Й.П. Крафт. 1820 г.
Французская армия состояла из императорской гвардии под личным руководством Наполеона, корпусов Ланна, Массены и резервного кавалерийского корпуса Бессьера. Ланн атаковал Асперн, а Массена — Эслинг. Кавалерия Бессьера располагалась в центре. Австрийская армия состояла из корпусов фельдмаршал-лейтенанта барона Иоганна фон Хиллера (1754–1819), генерала от кавалерии графа Генриха фон Беллегарда (1757–1845), князя Гогенцоллерна-Гехингенского, Розенберга и резервного кавалерийского корпуса Лихтенштейна. Корпуса Хиллера и Беллегарда сражались у Асперна, а корпус Розенберга — у Эсслинга. Корпус Лихтенштейна находился в центре, готовый атаковать французскую кавалерию, если та вступит в дело.
Когда утром 21 мая примерно 40–45 тыс. французов собрались на левом берегу, Карл приказал артиллерии открыть огонь по мостам. Некоторые мосты были повреждены, а потом снесены бурными водами разлившегося Дуная. Среди них был и главный мост, что затруднило переправу французов с острова Лобау. Австрийцы после ожесточенного боя отбили Асперн, но Эсслинг, обороной которого руководил дивизионный генерал граф Жан Буде (1769–1809), им с ходу отбить не удалось. Французы, в свою очередь, несколько раз пытались вновь захватить Асперн, но, несмотря на большие потери, не смогли этого сделать. Наполеон приказал Бессьеру атаковать и отбить батареи. Но их прикрыла легкая кавалерия Лихтенштейна и дала австрийцам время увезти батареи. Затем Бессьер наткнулся на каре Гогенцоллерна и вынужден был отступить с большими потерями. Утром 22 мая Наполеон вместе с подкреплениями переправился на левый берег Дуная и сумел собрать в Эсслинге до 77 тыс. солдат при 152 орудиях. У Карла было 98 тыс. человек при 288 орудиях. Наполеон начал штурм Асперна, который 10 раз переходил из рук в руки. Под Эсслингом тоже продолжались бои. Взяв Асперн, император рассчитывал прорвать центр австрийской позиции. Австрийцы было дрогнули, но тут на поле боя появился сам эрцгерцог Карл и со знаменем в руках возглавил контратаку переброшенных из резерва элитных гренадерских батальонов. Австрийская артиллерия доминировала на поле боя, выпустив за сражение 53 тыс. снарядов по сравнению с 24 300 со стороны французов. Французов удалось отбросить, а возглавлявший их маршал Ланн был смертельно ранен (ему оторвало ядром правую ногу). Потеря Ланна была особенно тяжела для Наполеона, и не только потому, что тот был его близким другом. Ланн был одним из немногих маршалов, способных к успешному самостоятельному командованию, уступая в этом отношении только Даву. В это время главный мост вновь был разрушен, что затруднило французам подвоз подкреплений и боеприпасов. С наступлением темноты Наполеон приказал вернуться на остров Лобау. Отступлением руководил Массена, и оно прошло достаточно успешно. Уставшие австрийцы, у которых, как и у французов, заканчивались боеприпасы, не преследовали неприятеля. На преследовании настаивал Хиллер, но Карл запретил ему преследование. Из-за этого спора Хиллер покинул армию под предлогом болезни. Это было первым поражением Наполеона в генеральном сражении. Оно было обусловлено двукратным превосходством австрийцев в артиллерии. Однако армия Наполеона не была разбита и сохранила боеспособность, что позволило ей вскоре взять реванш в битве при Ваграме. В бюллетене, выпущенном после сражения, Наполеон охарактеризовал битву при Асперне и Эсслинге как новый памятник непоколебимой стойкости французской армии. Император Франц I (1768–1835), узнав о победе, писал своему брату эрцгерцогу Карлу: «Вам было суждено первым прервать 15-летнее военное счастье гордого противника. Вы, дорогой моему сердцу брат, Вы — первая опора моего трона, Вы — спаситель Отечества, которое будет вечно благодарить Вас, как монарха, и благословлять». Победа стала результатом реформ австрийской армии, осуществленной эрцгерцогом Карлом. Значительно повысилась эффективность австрийской артиллерии, а пехота освоила действия в рассыпном строю. Поражение Наполеона при Асперне и Эсслинге усилило угрозы выступления Пруссии на стороне Австрии.
Потери французов составили около 5000 убитыми, включая 3 генералов, 24 тыс. ранеными, включая 24 генерала, 3000 пленными и 3 орудия. Австрийцы потерял 5200 убитыми, 22 900 ранеными, включая 13 генералов, и 700 пленными.