Единственная дочь короля Леопольда I и его второй жены Луизы Орлеанской, сестра Леопольда II и Филиппа Фландрского. Она была названа в честь первой жены Леопольда, принцессы Шарлотты Уэльской, умершей при родах. Принцесса приходилась двоюродной сестрой королеве Великобритании Виктории и её мужу герцогу Альберту, а также Фердинанду II Португальскому.
27 июля 1857 года Шарлотта вышла замуж за австрийского эрцгерцога Максимилиана (1832—1867), младшего брата императора Франца Иосифа. Тот назначил Максимилиана вице-королем Ломбардо-Венецианского королевства и супруги несколько лет провели в Италии.
В 1863 году при поддержке французского императора Наполеона III Максимилиан получил титул и корону Императора Мексики. После прибытия в Мексику в 1864 году супруги короновались и остались жить в Мехико, выбрав как резиденцию Чапультепекский дворец. Как императрица, Шарлотта сменила имя и стала именоваться Карлотой, на испанский манер. По прошествии всего нескольких месяцев после коронации Наполеон III решил остановить свой мексиканский проект и Максимилиан лишился его поддержки. Новый император столкнулся с противодействием со стороны республиканцев и Соединенных Штатов. Видя неустойчивость положения, Шарлотта вернулась в Европу, где попыталась найти поддержку для мужа. Однако ее усилия были напрасны, у нее появились симптомы шизофрении и сильный стресс. В Мексику она так и не вернулась. Печальные известия из Мексики и неудача миссии подорвали здоровье Шарлотты, она страдала шизофренией и последующие годы жила под присмотром врачей в своем замке под Брюсселем. Она умерла так и не узнав что в 1867 году ее муж был расстрелян.
Шарлотта и Максимилиан не имели детей. В 1865 имперская чета усыновила Агустина и Сальвадора Итурбиде, внуков бывшего императора Мексики Агустина Итурбиде. После падения монархии усыновление потеряло силу.
По слухам, в 1866 году Шарлотта встречалась с бельгийским офицером Альфредом ван дер Смиссенс и результатом их связи стало рождение Максима Вейгана. Сам Вейган, в будущем французский генерал, отказался подтвердить или опровергнуть эту информацию.