Молодой офицер Гринёв попадает на службу в отдалённую Белогорскую крепость на границе киргизско-кайсацких степей. Там он знакомится с дочкой коменданта крепости, Машей, а также с честолюбивым и самовлюблённым офицером Швабриным. Видя в Гринёве соперника в попытках завоевать Машу, Швабрин провоцирует дуэль. В это время разгорается Пугачёвское восстание. Белогорская крепость взята, а родители Маши убиты. Швабрин соглашается перейти на службу к Пугачёву, чтобы сохранить себе жизнь. Гринёв отказывается, но Пугачёв милует его и отпускает, так как тот ранее одарил его видным тулупом, помогшим ему разыграть роль беглого царя. Впоследствии Гринёв повторно едет в Белогорскую крепость, чтобы освободить Машу. После взятия крепости царскими войсками арестованный Швабрин из мести доносит на Гринёва, и тому грозит гражданская казнь. Но отчаянное ходатайство Маши перед императрицей Екатериной II спасает Гринёву его честное имя.