وهذه الغزوة في الحقيقة امتداد لغزوة حنين ، وذلك أن معظم فلول هَوَازن وثَقِيف دخلوا الطائف مع القائد العام ـ مالك بن عوف النَّصْرِي ـ وتحصنوا بها ، فسار إليهم رسول الله (صلى الله عليه وسلم) بعد فراغه من حنين وجمع الغنائم بالجعرانة ، في الشهر نفسه ـ شوال سنة 8 هـ .
وقدم خالد بن الوليد على مقدمته طليعة في ألف رجل ، ثم سلك رسول الله (صلى الله عليه وسلم) إلى الطائف ، فمر في طريقه على نخلة اليمانية ، ثم على قَرْنِ المنازل ، ثم على لِيَّةَ ، وكان هناك حصن لمالك بن عوف فأمر بهدمه ، ثم واصل سيره حتى انتهى إلى الطائف فنزل قريباً من حصنه ، وعسكر هناك ، وفرض الحصار على أهل الحصن .
ودام الحصار مدة غير قليلة ، ففي رواية أنس عند مسلم : أن مدة حصارهم كانت أربعين يوماً ، وعند أهل السير خلاف في ذلك ، فقيل : عشرين يوماً ، وقيل : بضعة عشر ، وقيل : ثمانية عشر ، وقيل : خمسة عشر .
ووقعت في هذه المدة مراماة ، ومقاذفات ، فالمسلمون أول ما فرضوا الحصار رماهم أهل الحصن رمياً شديداً ، كأنه رِجْل جراد ، حتى أصيب ناس من المسلمين بجراحة ، وقتل منهم اثنا عشر رجلاً ، واضطروا إلى الارتفاع عن معسكرهم إلى مسجد الطائف اليوم، فعسكروا هناك .
ونصب النبي (صلى الله عليه وسلم) المنجنيق على أهل الطائف ، وقذف به القذائف ، حتى وقعت شدخة في جدار الحصن ، فدخل نفر من المسلمين تحت دبابة ، ودخلوا بها إلى الجدار ليحرقوه ، فأرسل عليهم العدو سكك الحديد محماة بالنار ، فخرجوا من تحتها ، فرموهم بالنبل وقتلوا منهم رجالاً .
وأمر رسول اللّه (صلى الله عليه وسلم) ـ كجزء من سياسة الحرب لإلجاء العدو إلى الاستسلام ـ أمر بقطع الأعناب وتحريقها ، فقطعها المسلمون قطعاً ذريعاً ، فسألته ثقيف أن يدعها للّه والرحم ، فتركها للّه والرحم .
ونادى مناديه (صلى الله عليه وسلم) : أيما عبد نزل من الحصن وخرج إلينا فهو حر ، فخرج إليهم ثلاثة وعشرون رجلاً ، فيهم أبو بكرة ـ تسور حصن الطائف ، وتدلى منه ببكرة مستديرة يستقى عليها ، فكناه رسول اللّه (صلى الله عليه وسلم) [ أبا بكرة ] ـ فأعتقهم رسول اللّه (صلى الله عليه وسلم) ، ودفع كل رجل منهم إلى رجل من المسلمين يمونه ، فشق ذلك على أهل الحصن مشقة شديدة .
ولما طال الحصار واستعصيى الحصن ، وأصيب المسلمون بما أصيب من رشق النبال وبسكك الحديد المحماة ـ وكان أهل الحصن قد أعدوا فيه ما يكفيهم لحصار سنة ـ استشار رسول اللّه (صلى الله عليه وسلم) نَوْفَل بن معاوية الدِّيلي فقال : هم ثعلب في جحر، إن أقمت عليه أخذته وإن تركته لم يضرك ، وحينئذ عزم رسول اللّه (صلى الله عليه وسلم) على رفع الحصار والرحيل ، فأمر عمر بن الخطاب فأذن في الناس ، إنا قافلون غداً إن شاء اللّه ، فثقل عليهم وقالوا : نذهب ولا نفتحه ؟ فقال رسول اللّه (صلى الله عليه وسلم) : ( اغدوا على القتال ) ، فغدوا فأصابهم جراح ، فقال : ( إنا قافلون غداً إن شاء اللّه ) فسروا بذلك وأذعنوا ، وجعلوا يرحلون ، ورسول اللّه يضحك .
ولما ارتحلوا واستقلوا قال : قولوا : ( آيبون تائبون عابدون ، لربنا حامدون ) .
وقيل : يا رسول اللّه ، ادع على ثقيف ، فقال : ( اللّهم اهد ثقيفاً ، وائت بهم ) .