История повествуется от имени Лоры, одной из двух главных действующих лиц рассказа.
Лора начинает историю с времён своего детства, с «живописного и уединенного» замка среди бесконечных лесов в Штирии, где она живёт с отцом, богатым английским вдовцом, ушедшим в запас после службы в Австрии. В возрасте шести лет её посетило видение прекрасной незнакомки в её комнате. Она утверждала, что была укушена, но никаких ран на её теле обнаружено не было.
Прошло двенадцать лет. Отец Лоры получает письмо от своего друга генерала Шпильсдорфа. Генерал хотел приехать в гости и привезти с собой племянницу, но та внезапно погибла при загадочных обстоятельствах. Лора удручена потерей той, которая могла бы стать ей другом, ей не хватает общения. Внезапная поломка экипажа неподалёку от дома, где живёт Лора, вызывает появление в доме молодой девушки, ровесницы Лоры. Её зовут Кармилла. Обе девушки узнают друг в друге ту, с которой встречались в детском сне.
Кармилла ранена в результате аварии экипажа. Её мать уведомляет отца Лоры, что её путешествие очень срочное и не может быть задержано. Она просит оставить дочь в замке на три месяца, после чего она заберет её.
Кармилла и Лора становятся близкими друзьями, но настроение Кармиллы подвержено внезапным переменам. Иногда она делает нарушающие спокойствие попытки романтически ухаживать за Лорой. Кармилла отказывается рассказывать что-либо о себе или о своём прошлом, несмотря на расспросы Лоры. Её скрытность — не единственная её странная особенность. Большую часть дня Кармилла спит, а ночью, кажется, ходит во сне. Когда в замок прибывает партия старых семейных портретов, Лора обнаруживает, что одна из её предков, «Миркалла, графиня Карнштейнская», чей портрет датирован 1698 годом, похожа один в один на Кармиллу, включая родимое пятно на шее.
Во время пребывания Кармиллы в замке, Лору посещают кошмары, в которых дьявольское чудовище, похожее на кошку, входит ночью в её комнату и кусает её в грудь. Затем чудовище принимает вид женщины и исчезает, пройдя сквозь дверь. Состояние здоровья Лоры ухудшается, и её отец вызывает врача для осмотра. Врач приватно беседует с отцом и просит, чтобы Лору никогда не оставляли одну.
Затем отец с Лорой устраивают поездку в разрушенное поселение Карнштейн. По пути туда они неожиданно встречают генерала Шпильсдорфа, который рассказывает им свою жуткую историю.
Шпильсдорф и его племянница встретили молодую женщину по имени Милларка и её загадочную мать на костюмированном балу. Мать уверяла, что она является старым другом генерала и просила, чтобы Милларке было позволено остаться с его племянницей на три недели, пока она будет занята секретным делом большой важности. Племянница генерала заболевает загадочным недомоганием, и симптомы болезни в точности соответствуют симптомам Лоры. После консультации с церковным доктором генерал понимает, что его племянницу посещал вампир. Взяв саблю, он спрятался в шкафу и ждал до тех пор, пока не увидел зловещее существо, похожее на кошку, которое подкралось к спальне его племянницы и укусило её в шею. Увидев это, генерал выскочил из укрытия и напал на чудовище, которое приняло облик Милларки. Она убежала, пройдя сквозь закрытую дверь, невредимая. Племянница генерала скончалась почти сразу после этого.
По прибытии в Карнштейн генерал спросил местного лесничего, где они могут найти могилу Миркаллы Карнштейн. Лесничий ответил, что могила была перенесена отсюда много лет назад человеком, который избавил их край от вампиров.
В то время, как генерал и Лора остались одни среди разрушенной часовни, появляется Кармилла. Впав в ярость при её виде, генерал бросается на Кармиллу с топором. Та обращается в бегство. Генерал объясняет Лоре, что Кармилла — это та самая Милларка, оба имени которых являются анаграммой имени вампира графини Миркаллы Карнштейн.
К событиям присоединяется барон Ворденбург, потомок героя, освободившего край от вампиров много лет назад. Ворденбург — крупный специалист по вампирам, и он обнаружил, что у его предка был роман с графиней Карнштейн перед тем, как она умерла и стала одной из бессмертных. В бумагах своего предка он обнаруживает указание на место, где спрятана могила Кармиллы. Специальная Имперская комиссия производит эксгумацию могилы и уничтожает тело вампира, действуя по доверенности правящей Габсбургской монархии, в пределах чьих владений расположена Штирия.