جنگ اول هرات
جنگ اول هرات زمانی آغاز شد که حاکم هرات، کامران میرزا، سر از اطاعت از دولت ایران پیچید و به تاخت و تاز در خراسان و سیستان مشغول شد. محمدشاه برای سرکوب او و ضمیمه مجدد هرات به خاک ایران تصمیم به لشکرکشی به آن سو گرفت. امپراتوری بریتانیا که بازگشت هرات به حاکمیت ایران را خطری برای ثبات حکومت خود در هندوستان می‌دانستند، با آن مخالفت کردند اما شاه به هشدارهایشان توجهی نکرد و در سال ۱۸۳۷ راهی هرات شد.
هرات برای ده ماه محاصره شد. چون وضعیت برای کامران میرزا سخت افتاد، وی تصمیم گرفت که تسلیم شود اما دولت بریتانیا که این موضوع را به سود خود نمی‌دانست، مداخله کرد و با کمک مالی و وعده کمک نظامی، او را منصرف کرد. اندکی بعد کشتی‌های بریتانیایی جزیره خارک را اشغال کردند و با تهدید به کشاندن جنگ به فارس و کرمان، شاه ایران را مجبور به عقب‌نشینی کردند. جنگ دوم هرات در زمان ناصرالدین‌شاه در ۱۸۵۶ روی داد که ایران به دلیل دخالت بریتانیایی‌ها مجدداً در بازپس‌گیری شهر ناکام ماند.
در زمان حاکمیت عباس میرزا بر خراسان جهت برقراری مجدد امنیت در آن سامان، محمدمیرزا (محمدشاه بعدی) از سوی پدر خود مأمور محاصره هرات و بازگرداندن حاکمیت ایران بدان شهر شد. او و قائم‌مقام فراهانی که شاهزاده را همراهی می‌کرد، با یارمحمدخان، وزیر هرات و کامران میرزا حاکم آن شهر، به مذاکره نشستند اما چون نتیجه‌ای حاصل نشد، شهر توسط سپاه ایران محاصره گردید. اگرچه محمدمیرزا در ابتدا به موفقیت‌هایی دست پیدا کرد، اما در میانه نبرد خبر درگذشت عباس میرزا در مشهد به او رسید و مجبور شد که به تهران بازگردد. پیش از بازگشت او و قائم‌مقام، آن دو با وزیر و حاکم هرات صلح کردند و مقرر شد کامران میرزا حاکمیت ایران را بپذیرد، پانزده هزار تومان زر و پنجاه شال کشمیری خراج پرداخت کند و اسرای ایرانی که در تاخت و تاز به خراسان اسیر کرده بود را آزاد کند. همچنین کامران میرزا به محمد میرزا تعهد داد که «اهالی قلمرو خویش را از راهزنی در حدود خراسان و کشتن و فروختن اسیران مانع شود.» پس از معاهده فوق، محمد میرزا که برای مراسم برگزیدگی به ولایتعهدی به تهران فراخوانده شوده بود، برادر خود قهرمان‌میرزا را به حاکمیت خراسان منصوب کرد و راهی پایتخت شد. مدت کوتاهی بعد فتحعلی‌شاه درگذشت و محمدمیرزا با نام محمدشاه به پادشاهی ایران رسید.
کامران میرزا از همان آغاز عهدنامه خود با محمدشاه را به دفعات نقض کرد. تاخت‌وتازهای سربازان او به شهرهای خراسان شاه را در نخستین سال سلطنتش، بر آن داشت که برای مجازات وی مجدداً به آن سمت لشکر بکشد. اما کامران میرزا با ارسال پیشکش به تهران و اظهار انقیاد، شاه را از تصمیم خود منصرف کرد. دیری نپایید که مردان کامران میرزا این بار به سیستان تاختند. او قبایل مختلف همجوار چون جمشیدی، تومانی و هزاره را در هرات گرد هم آورد تا در صورت لشکرکشی شاه ایران، در برابر او مقاومت کند. این تحرکات و حمله قریب‌الوقوع ایران جهت مجازات کامران میرزا، دولت انگلیس را نگران ساخت. مک‌نیل در نامه‌ای محرمانه پالمرستون، وزیر امورخارجه انگلیس را مطلع ساخت که «هرات کلید تمام شمال افغانستان است… اگر مانع پیشروی ایران نشویم، خطر برخورد با ایران و روسیه در افغانستان وجود دارد… در صورتی که ایران هرات و روسیه خیوه و بخارا را تصرف کند، کنترل آسیای میانه از دست ما خارج خواهد شد.»
با مشاهده این وضعیت، پالمرستون الکساندر بورنس را راهی کابل و مستر لیچ را راهی قندهار کرد تا از اتحاد امرای آن نواحی با شاه ایران جلوگیری کند. همزمان، کولونی و پاتینجر را با لباس مبدل و با نام «ملا مؤمن» و «سید علوی» راهی هرات کردند تا کامران میرزا را یاری دهند. محمدشاه قنبرعلی‌خان مافی را با هدایایی به کابل فرستاد تا حاکم آن را به همراهی و اطاعت از دولت ایران فرابخواند. یکی از گزارش‌های برونس ذکر می‌کند که فرستاده مذکور به حضور پذیرفته نشد چرا که دوست‌محمدخان رابطه خود با ایران و روسیه را قطع کرده‌است. کامران میرزا که از قصد محمدشاه اطمینان حاصل کرده بود، مجدداً فرستاده‌ای را با هدایای پرشمار راهی تهران کرد تا اظهار بندگی نماید. اما حاجی میرزا آقاسی پاسخ داد زمانی که محمدشاه به هرات رسید، کامران میرزا به نزد شاه آید و پس از اظهار انقیاد، مجدداً به حاکمیت هرات گماشته شود. هنوز محمدشاه در تهران بود که کامران میرزا تعدادی از ایرانیان شهر را کشت و باقی را بیرون کرد. او همچنین راه عبور و مرور بین ایران و هرات را کاملاً بست. این کار در عمل، نوعی اعلان استقلال بود. این رویداد، محمدشاه را در تصمیم خود جهت لشکرکشی به شرق مصمم‌تر ساخت. همزمان با این اتفاقات، تحرکات دولت انگلیس ادامه داشت. وزیر مختار آن کشور، در ۱۸۳۶ به دولت ایران هشدار داد در صورتی که ایران در امور افغانستان مداخله کند، دولت انگلیس «سخت اعتراض خواهد کرد.» از مهم‌ترین دلایل مخالفت لندن با لشکرکشی محمدشاه به هرات، ماده ۱۱ عهدنامه ترکمنچای بود که مطابق آن، روسیه حق داشت در سراسر قلمروی ایران کنسولگری و نمایندگی بازرگانی تأسیس کند اما نباید اعضای آن از ده نفر فراتر رود. این ماده انگلیسی‌ها را نگران می‌ساخت زیرا باعث نزدیکی هرچه بیشتر روس‌ها به هند می‌شد. آن‌ها روسیه را در پشت تلاش ایران جهت پس‌گیری هرات می‌دانستند. حتی شایع شد که روس‌ها قصد دارند قره‌باغ و شیروان را بابت این حمله به ایران پس بدهند. مدتی بعد انگلیسی‌ها مجدداً به دولت ایران پیام دادند که حمله به هرات را «عملی دشمنانه» تلقی می‌کنند.
انگیزه دولت ایران از این لشکرکشی، علاوه بر تابعیت مجدد هرات، تأمین امنیت شرق ایران که به سبب تاخت‌وتازهای قبایل سنی مذهب آسیای میانه به آن منطقه به چالش کشیده می‌شد، بود. این قبایل در حملات خود چندین هزار ایرانی را به اسیری گرفته بودند و شاه می‌توانست ضمن برقراری حاکمیت مجدد ایران بر هرات، اسرای مذکور را آزاد سازد و امنیت خراسان را تأمین کند. به علاوه انگیزه‌ای شخصی نیز برای محمدشاه وجود داشت. او که در زمان ولایتعهدی پدرش هرات را محاصره کرده بود اما موفق به ورود شهر نشده بود، می‌توانست کار ناتمام خود را به اتمام برساند. همچنین شاه که در نبرد برای تاج‌وتخت از یاری نیروهای روسیه و انگلیس سود جسته بود، می‌توانست با یک فتح نظامی قدرت دولت خود را به رخ بکشد.
با وجود اعتراض دولت انگلستان به لشکرکشی ایران به سمت هرات، سرانجام ایران در سال ۱۲۵۳ هجری مطابق با ۱۸۳۷ میلادی به هرات لشکر کشید. افسران انگلیسی از ارتش ایران اخراج شدند و وزیر مختار انگلیس پرچم سفارت آن کشور را پایین کشید. این عمل بیش از اینکه به سود ایران باشد، به سود انگلیسی‌ها بود چرا که مطابق عهدنامه ۱۸۱۴ انگلیس باید در «مسائل میان ایران و افغان بی‌طرف بماند.» محمدشاه شخصاً فرماندهی سپاه را به عهده گرفت و در ماه سپتامبر با ۸۰ هزار سرباز راهی شرق شد. سپاه ایران در ابتدا قلعه غوریان را محاصره کرد. آقاسی این تصمیم را وقت تلف کردن می‌دانست و بر آن بود که سپاه باید مستقیماً شهر را محاصره کند. اما آقاخان نوری (وزیر لشکر وقت، صدر اعظم ایران پس از قتل امیرکبیر توسط ناصرالدین‌شاه) شاه را برای محاصره آن قلعه راضی کرد. به هر صورت قلعه مذکور در شعبان فتح شد. سیمونیچ، وزیر مختار روس، در نامه‌ای این اتفاق را تبریک گفت و آن را پیشامد یک فتح بزرگ دانست. سپس سپاه ایران در ماه رمضان راهی هرات گردید. در این زمان، کامران میرزا ۲۲ هزار نفر را برای دفاع از شهر گردآورده بود.
با محاصره هرات، مجدداً اختلاف در اردوی ایران پدیدار شد. آقاسی معتقد بود که سپاه ایران نباید مانع عبور و مرور غیرنظامیان شود و ۳ دروازه را به آنان اختصاص دهد. اما آقاخان نوری معتقد بود باید بر شهر سخت گرفته شود تا تسلیم شوند. محمدشاه نظر آقاخان را در پیش گرفت. در همین زمان، دوست‌محمدخان، امیر کابل، هدایایی نزد شاه ایران فرستاد و اظهار انقیاد کرد و سپاه ایران بدون مشکلات زیادی حومه هرات را فتح کرد. کامران میرزا فرستادگانی نزد خوانین سنی آسیای میانه فرستاد و پیام داد که «هرگز فکر نکنید محمدشاه پس از فتح هرات شما را آسوده می‌گذارد. قصد او آزادی اسیران شیعه است که بیشتر در میان خیوق و میمنه پراکنده‌اند.» این ترفند جواب داد و خوانین مذکور سپاهیانی به سمت هرات فرستادند اما ارتش ایران به سادگی نیروهای آن‌ها را پیش از رسیدن به هرات در هم شکست. چون وضعیت برای کامران میرزا دشوار افتاد، در پی صلح برآمد. محمدشاه پاسخ داد «اگر کامران میرزا به ضمیمه بودن هرات به خاک ایران اعتراف کند، علاوه بر اینکه خواف را به او تفویض می‌کند، به سمت تهران بازمی‌گردد. به شرط آنکه در بیرون از هرات به حرمت سلطنت با او ملاقات کند…» کامران میرزا پذیرفت؛ اما پاتینجر، نماینده انگلیس، مانع شد. شاه ایران که این وضع را دید، دستور داد نبرد ادامه پیدا کند. چون کامران میرزا و وزیرش یارمحمدخان خود را ناتوان دیدند، بر آن شدند که جنگ را مذهبی کنند. علمای سنی سپاهیان ایران را کافر اعلام کردند و مردم شهر کفن‌پوشان به جنگ ارتش ایران شتافتند که البته به سادگی و با تلفات بالا مجبور به عقب‌نشینی شدند. همزمان با این اتفاقات، فرستادگانی از سوی امرای منطقه، از کابل و قندهار گرفته تا پنجاب و خوارزم، وارد اردوی ایران شده و هدایای پرشماری را پیشکش کردند. امیر قندهار به محمدشاه پیشنهاد یاری داد، اما شاه آن را نالازم دانست و در عوض، به او دستور داد به فراه و سبزار لشکر بکشد، زیرا آن مناطق در دست پسر کامران میرزاست.
چون حلقه محاصره تنگ‌تر می‌شد، کامران میرزا مجدداً در پی صلح برآمد. قرار شد شخصاً به اردوی ایران وارد شود اما مک‌نیل، ایلچی دولت انگلیس که در اردوی ایران حاضر بود، مانع شد و «او را به صبوری دل همی داد و کس به شهر فرستاد.» مک‌نیل در دیدار با شاه، به او اعلام کرد که سپاه ایران باید به «سبب اتحاد دولتین ایران و انگلیس دست از محاصره هرات بردارد، وگرنه آماده مشاجره شود.» محمدشاه اعتنایی نکرد. چون برج و باروی هرات توسط محاصره کنندگان تخریب شد، مک‌نیل مجدداً به دیدار شاه رفت و از او خواست که سه روز آتش‌بس اعلام کند تا او شخصاً وارد هرات شده و کامران میرزا را به تسلیم وادارد. محمدشاه پذیرفت، اما مک‌نیل زیر قول خود زد و با پرداخت ۵۰ هزار روپیه، کامران میرزا و وزیرش را به مقاومت ترغیب کرد. همچنین اعلام کرد که تا دو ماه دیگر، نیروی دریایی انگلیس وارد دریای عمان شده و با اشغال فارس، دولت ایران را مجبور به عقب‌نشینی می‌کند. مهدی‌خان قراپاباغ که از طرف محمدشاه همراه مک‌نیل بود، از این موضوع آگاه شد. همزمان پیک هیئت انگلیسی که اخبار دولت ایران را مرتباً برای افسران انگلیسی حاضر در هرات مخابره می‌کرد، دستگیر شد. این دو مسئله، واکنش خشمگینانه‌ای از محمدشاه در پی داشت و مک‌نیل نیز با عصبانیت اردوی ایران را ترک کرد.
مک‌نیل که پس از قطع روابط ایران و انگلیس قصد ترک ایران از راه تبریز را داشت، چون محمدشاه اعلام کرده بود که علما «اعلام کنند همه مسلمانان باید در برابر انگلیسی‌های کافر مقاومت کنند»، از زنجان به سیدمحمدباقر شفتی، رهبر روحانیون شیعه، نامه‌ای نوشت و به او گفت که «چون مراتب از لوازم بود مصدع احوال رحمت اشتمال آمد باقی قوام دین مبین و قواعد شرع متین به انوار و نقوی و آثار حکم و فتوی آن شریعت پناه مرتفع و معلی باد.» این نامه یک تهدید پنهان علیه شفتی بود که به خواسته محمدشاه مبنی بر اعلام جهاد علیه قبایل سنی و دولت بریتانیا توسط روحانیون، عمل نکند. روحانی شیعه در پاسخ از تصمیم شاه دفاع کرد و آن را برای حفظ امنیت مناطق شرقی ایران و نجات شیعیان از حملات سنیان ضروری دانست. او روابط نظامی و دیپلماتیک را نیازمند «رجوع به امنای دولت علّیه» خواند؛ اما اعلام کرد که قصد اعلان جهاد علیه بریتانیا و قبایل سنی را ندارد. این موضوع بعدها اعتراض دولت ایران را در پی داشت و سفیر ایران به لرد پالمرستون نوشت: «کاغذ نوشتن دولت انگریز (انگلیس) به جناب فخرالاسلام آقا سیدمحمدباقر مجتهد، به اصفهان، چه مناسبت دارد.» و در نامه‌ای دیگر ذکر شد که «این مک‌نیل نه تنها اخبار نامه جنگ به امنای دولت علیه نوشت، بلکه با علمای ممالک محروسه ایران هم بعضی مضامین مبنی بر اخلال و افساد نگاشت. من جمله خدمت جناب فخرالاسلام آقا سیدمحمدباقر مجتهد اصفهانی، از زنجان فرستاد.»مک‌نیل در تبریز نامه‌ای از پالمرستون دریافت کرد که حاوی هشداری برای شاه ایران بود. او در آن نامه عنوان کرده بود که انگلیس این عمل شاه را نخواهد پذیرفت و آن را حاصل همکاری با روسیه می‌داند. مدتی پس از خروج مک‌نیل، به محمدشاه از سوی حاکمان فارس و کرمان مطلع شد که کشتی‌های انگلیسی وارد دریای عمان شده‌اند و خارک را اشغال کرده‌اند. استودارت، نماینده انگلیسی ساکن هرات، به شاه نامه نوشت که «هنوز فتح هرات تمام نشده، مردم هندوستان طریق سرکشی در پیش گرفته‌اند. دولت انگلیس ناچار است اگر مراجعت نکنید، به منازعت برخیزد. اینک که کشتی‌های ما تا خارک پیش آمده‌اند، من به شما اعلان جنگ می‌کنم. اگر از هرات دست برندارید، باید برای جنگ در فارس آماده شوید.» با دیدن این وضعیت، محمدشاه چاره‌ای جز عقب‌نشینی نیافت و پس از ۱۰ ماه محاصره، با دست خالی، به پایتخت بازگشت.
دولت ایران منشوری صادر کرد که نشانگر خشم عمیق محمدشاه بود. در این منشور آمده بود که تلاش دولت ایران برای آزادسازی اسرای ایرانی در بند قبایل آسیای میانه پایان نیافته‌است. از سربازان تشکر کرد که در «سرما و گرما… با شوق و غیرت تاب آوردند.» به انگلیسیان تاخت که ما «عهدنامه‌هایی با آنان داشتیم که آن را محکم‌تر از صد قلعه می‌پنداشتیم… اما نقض عهد کردند. خارک را گرفتند و تهدید به حمله به فارس و کرمان کردند.» «پس برگشتیم… انگلیس دولت بزرگی است و صلاح حرب نداشتیم.» هما ناطق این منشور را نخستین مرتبه در تاریخ ایران می‌داند که دولت خود را مسئول پاسخگویی به مردم یافت. شورش روحانیون در اصفهان در همان زمان روی داد و دولت باید برای یک سفر جنگی دیگر آماده می‌شد. همچنین غارت خرمشهر توسط عثمانی نیز همزمان با حضور سپاه ایران در شرق روی داد.
در مجموع ماجرای هرات یک پیروزی قاطعانه برای بریتانیا بود. یک سال بعد لرد پالمرستون وزیر خارجه انگلیس از پذیرش نماینده ایران حسین‌خان آجودان‌باشی سر باز زد اما به هر حال انگلیسی‌ها نمی‌توانستند سفارت خود در تهران را برای مدت طولانی خالی بگذارند و در سال ۱۸۴۱ میلادی روابط تهران و لندن از سر گرفته شد. با این وجود مسئله هرات به صورت دائمی حل نشد. ایران در زمان ناصرالدین‌شاه تلاش کرد تا حاکمیت خود بر این شهر را مجدداً برقرار سازد که همین زمینه برخورد مستقیم نظامی میان ایران و انگلیس را فراهم آورد.