В основі роману лежать мемуари п'ятдесятирічного дворянина Петра Андрійовича Гриньова, написані ним за часів царювання імператора Олександра і присвячені «пугачовщину», в якій сімнадцятирічний офіцер Петро Гриньов за «дивним зчепленню обставин» прийняв мимовільну участь.
Петро Андрійович з легкої іронією згадує своє дитинство, дитинство дворянського недоростка. Його батько Андрій Петрович Гриньов в молодості «служив при графі Мініх і вийшов у відставку прем'єр-майором у 17 ... році. З тих пір жив в своїй Симбірської селі, де і одружився на дівчині Авдотья Василівні Ю., дочки бідного тамтешнього дворянина ». У родині Гриньових було дев'ять чоловік дітей, але всі брати і сестри Петруші «померли в дитинстві». «Матінка була ще мною череватим, - згадує Гриньов, - як я вже був записаний в Семенівський полк сержантом».
З п'ятирічного віку за Петруша доглядає придворної Савельич, «за тверезе поведінка» подарований йому в дядьки. «Під його наглядом на дванадцятому році вивчився я російської грамоті і міг дуже тверезо судити про властивості хорта кобеля». Потім з'явився вчитель - француз Бопре, який не розумів «значення цього слова», так як в своїй вітчизні був перукарем, а в Пруссії - солдатом. Юний Гриньов і француз Бопре швидко порозумілися, і, хоча Бопре за контрактом зобов'язаний був навчати Петрушу «по-французьки, по-німецьки і всіх наук», він вважав за краще скоро вивчитися у свого учня «базікати по-російськи». Виховання Гриньова завершується вигнанням Бопре, викритого в безпутності, пияцтво і нехтуванні обов'язками вчителя.
До шістнадцяти років Гриньов живе «недорослем, ганяючи голубів і граючи в чехарду з дворовими хлопцями». На сімнадцятому році батько вирішує послати сина на службу, але не в Петербург, а в армію «понюхати пороху» та «потягнути лямку». Він відправляє його до Оренбурга, наставляючи служити вірно «кому присягати», і пам'ятати прислів'я: «бережи плаття знову, а честь змолоду». Всі «блискучі надії» молодого Гриньова на веселе життя в Петербурзі зруйнувалися, попереду чекала «нудьга в стороні глухий і віддаленою».
Під'їжджаючи до Оренбурга, Гриньов і Савельіч потрапили в буран. Випадкова людина, що зустрівся на дорозі, виводить заблукала в хуртовини кибитку до умёту. Поки кибитка «тихо посувалася» до житла, Петру Андрійовичу приснився страшний сон, в якому п'ятдесятирічний Гриньов вбачає щось пророче, пов'язуючи його з «дивними обставинами» свого подальшого життя. Мужик з чорною бородою лежить в ліжку батька Гриньова, а матінка, називаючи його Андрієм Петровичем і «посаджені батьком», хоче, щоб Петруша «поцілував у нього ручку» і попросив благословення. Мужик махає сокирою, кімната наповнюється мертвими тілами; Гриньов спотикається об них, ковзає в кривавих калюжах, але його «страшний мужик» «ласкаво кличе», примовляючи: «Не бійсь, підійди під моє благословення».
На знак подяки за порятунок Гриньов віддає «вожатого», одягненому занадто легко, свій заячий тулуп і підносить склянку вина, за що той з низьким поклоном його дякує: «Спасибі, ваше благородіє! Мабуть вас Господь за вашу доброчесність ». Зовнішність «вожатого» здалася Гриньова «чудовою»: «Він був років сорока, зростання середнього, худорлявий і широкоплечий. У чорній бороді його показувалася сивина; живі великі очі так і бігали. Обличчя його мало вираз досить приємне, але шахрайський ».
Білогірська фортеця, куди з Оренбурга посланий служити Гриньов, зустрічає юнак не грізними бастіонами, вежами і валами, а виявляється селом, оточеній дерев'яним парканом.Замість хороброго гарнізону - інваліди, які не знають, де ліва, а де права сторона, замість смертоносної артилерії - старенька гармата, забита сміттям.
Комендант фортеці Іван Кузьмич Миронов - офіцер «з солдатських дітей», людина неосвічена, але чесний і добрий. Його дружина, Василина Єгорівна, повністю ним керує і на справи служби дивиться як на свої господарські. Незабаром Гриньов стає для Миронових «рідним», та й сам він «непомітним чином <...> прив'язався до доброго сімейству». У дочки Миронових Маші Гриньов «знайшов розсудливу і чутливу дівчину».
Служба не обтяжує Гриньова, він захопився читанням книг, вправляється в перекладах і яка віршів. Спочатку він зближується з поручиком Швабріним, єдиним в фортеці людиною, близькою Гриньова за освітою, віком і роду занять. Але незабаром вони сваряться - Швабрін із знущанням розкритикував любовну «пісеньку», написану Гриньовим, а також дозволив собі брудні натяки щодо «вдачі і звичаю» Маші Миронової, якій ця пісенька була присвячена. Пізніше, в розмові з Машею, Гриньов з'ясує причини наполегливої лихослів'я, яким Швабрін її переслідував: поручик сватався до неї, але отримав відмову. «Я не люблю Олексія Івановича. Він дуже мені противний », - зізнається Маша Гриньова. Сварка дозволяється поєдинком і пораненням Гриньова.
Маша доглядає за пораненим Гриньовим. Молоді люди зізнаються один одному «в серцевому схильності», і Гриньов пише батюшці лист, «просячи батьківського благословення». Але Маша - бесприданница. У Миронових «всього-то душ одна дівка Палажка», в той час як у Гриньових - триста душ селян. Батько забороняє Гриньова одружитися і обіцяє перевести його з Білогірської фортеці «куди-небудь подалі», щоб «дурь» пройшла.
Після цього листа для Гриньова життя стала нестерпною, він впадає в похмуру задума, шукає усамітнення. «Я боявся або зійти з розуму, або вдаритися в розпусту». І тільки «несподівані події, - пише Гриньов, - що мали важливий вплив на все моє життя, дали раптом моїй душі сильне і благе потрясіння».
На початку жовтня 1773 р комендант фортеці отримує секретне повідомлення про Донському козака Омеляна Пугачова, який, видаючи себе за «покійного імператора Петра III», «зібрав злочинницьку зграю, справив обурення в яицких селищах і вже взяв і розорив кілька фортець». Коменданту запропоновано «вжити належних заходів до відбиття згаданого лиходія і самозванця».
Незабаром вже все заговорили про Пугачову. У фортеці схоплений башкирец з «обурливими листами». Але допитати його не вдалося - у башкирца був вирваний мову. З дня на день жителі Білогірської фортеці очікують нападу Пугачова,
Бунтівники з'являються несподівано - Миронови навіть не встигли відправити Машу в Оренбург. При першому ж приступі фортеця взята. Жителі зустрічають пугачовців хлібом і сіллю. Полонених, серед яких був і Гриньов, ведуть на площу присягати Пугачову. Першим на шибениці гине комендант, який відмовився присягнути «злодієві і самозванцю». Під ударом шаблі падає мертвої Василиса Єгорівна. Смерть на шибениці чекає і Гриньова, але Пугачов милує його. Трохи пізніше від Савельіча Гриньов дізнається «причину пощади» - отаман розбійників виявився тим волоцюгою, який отримав від нього, Гриньова, заячий тулуп.
Увечері Гриньов запрошений до «великого государя». «Я помилував тебе за твою чесноту, - говорить Пугачов Гриньова, - <...> Чи обіцяв служити мені з ретельністю?» Але Гриньов - «природний дворянин» і «присягав государині імператриці». Він навіть не може обіцяти Пугачову не служити проти нього. «Голова моя в твоїй владі, - говорить він Пугачову, - пустиш мене - спасибі, караєш - Бог тобі суддя».
Щирість Гриньова вражає Пугачова, і той відпускає офіцера «на всі чотири сторони». Гриньов вирішує їхати в Оренбург за допомогою - адже в фортеці в сильній гарячці залишилася Маша, яку попадя видала за свою племінницю.Особливо його турбує, що комендантом фортеці призначений Швабрин, котрий присягнув Пугачову на вірність.
Але в Оренбурзі Гриньова в допомозі відмовлено, а через кілька днів війська заколотників оточують місто. Потяглися довгі дні облоги. Незабаром випадком в руки Гриньова потрапляє лист від Маші, з якого він дізнається, що Швабрин примушує її вийти за нього заміж, погрожуючи в іншому випадку видати її пугачовців. Знову Гриньов звертається за допомогою до військового коменданта, і знову отримує відмову.
Гриньов з Савельичем виїжджають в Білогірську міцність, але у Бердской слободи вони схоплені повстанцями. І знову провидіння зводить Гриньова і Пугачова, даючи офіцеру випадок виконати свій намір: дізнавшись від Гриньова суть справи, по якому той їде в Білогірську міцність, Пугачов сам вирішує звільнити сироту і покарати кривдника.
По дорозі до фортеці між Пугачовим і Гриньовим відбувається довірлива розмова. Пугачов чітко усвідомлює свою приреченість, очікуючи зради перш за все з боку своїх товаришів, знає він, що і «милості государині» йому не чекати. Для Пугачова, як для орла з калмицької казки, яку він з «диким натхненням» розповідає Гриньова, «ніж триста років харчуватися падаллю, краще раз напитися живої кров'ю; а там що Бог дасть! ». Гриньов робить з казки інший моральний висновок, чим дивує Пугачова: «Жити вбивством і розбоєм значить на мене клювати мертвечину».
У Білогірської фортеці Гриньов за допомогою Пугачова звільняє Машу. І хоча оскаженілий Швабрін розкриває перед Пугачовим обман, той сповнений великодушності: «Стратити, так стратити, жалувати, так жалувати: такий мій звичай». Гриньов і Пугачов розлучаються «дружньому».
Машу в якості нареченої Гриньов відправляє до своїх батьків, а сам по «обов'язку честі» залишається в армії. Війна «з розбійниками і дикунами» «нудна і дріб'язкова». Спостереження Гриньова виконані гіркоти: «Не приведи Бог бачити російський бунт, безглуздий і нещадний».
Закінчення військової кампанії збігається з арештом Гриньова. Поставши перед судом, він спокійний у своїй впевненості, що може виправдатися, але його обумовлює Швабрін, виставляючи Гриньова шпигуном, отряжённим від Пугачова в Оренбург. Гриньов засуджений, його чекає ганьба, заслання до Сибіру на вічне поселення.
Від ганьби і посилання Гриньова рятує Маша, яка їде до цариці «просити милості». Прогулюючись по саду Царського Села, Маша зустріла даму середніх років. У цій пані все «мимоволі приваблювало серце і вселяло довіреність». Дізнавшись, хто така Маша, вона запропонувала свою допомогу, і Маша щиро розповіла пані всю історію. Дама виявилася імператрицею, яка помилувала Гриньова так само, як Пугачов свого часу помилував і Машу, і Гриньова.