وقعت غزوة أحد فى شهر شوال من السنة الثالثة للهجرة؛ لأن قريش بعد هزيمتها في غزوة بدر أرادت الإنتقام من المسلمين لاسترجاع هيبتها بين القبائل، وأيضا لتؤمن طرق تجارتها، فجمعت 3000 مقاتل بقيادة أبو سفيان بن حرب، فأرسل العباس بن عبد المطلب إلى الرسول(صلى الله عليه وسلم)، ليخبره باستعداد قريش للحرب، فبعث الرسول(صلى الله عليه وسلم) الحُباب بن المنذر يستطلع الأخبار.
موضوعات مقترحة
وعندما تأكد الرسول(صلى الله عليه وسلم) من صحتها اجتمع بأصحابه لمشاورتهم فاختار البعض البقاء في المدينة والتحصن فيها والدفاع عنها، وكان الرسول(صلى الله عليه وسلم) يميل لهذا الرأي، ولكن الأغلبية فضلوا الخروج للقتال خارج المدينة فخرج الرسول(صلى الله عليه وسلم) بجيش قوامه 1000 مقاتل، ولكن تخلى بعض المنافقين عنه فى الطريق وانسحبوا ورجعوا إلى المدينة ولم يتبقى مع الرسول(صلى الله عليه وسلم) سوى 700 مقاتل.
ورغم ذلك استمر الجيش في مسيرته حتى وصل إلى جبل أحد واختار الرسول(صلى الله عليه وسلم) 50 من الرماة، وجعل عبد الله ابن جبير قائدًا لهم وأمرهم بالوقوف على جبل مقابل لجبل أحد عرف فيما بعد بجبل الرماة، وأمرهم بالتمركز في أماكنهم وعدم مغادرة الجبل حتى يأذن لهم الرسول(صلى الله عليه وسلم) بالنزول.
وفي ذلك الوقت حاول أبو سفيان التفرقة بين المسلمين فأرسل للأنصار يطلب منهم عدم مشاركة الرسول(صلى الله عليه وسلم) فى القتال فقال (خلوا بيننا وبين ابن عمنا فننصرف عنكم ولا حاجة لنا بقتالكم) ولكن الأنصار رفضوا واختاروا الله ورسوله، وبدأت المعركة وحارب المسلمين بشجاعة حتى وصلوا لقلب معسكر قريش.
بدأ المشركون بالهروب من ساحة القتال فاعتقد الرماة أن المعركة قد انتهت فقرروا ترك مكانهم والنزول لجمع الغنائم ولكن عبد الله بن جبير رفض وأمرهم بانتظار أمر رسول الله(صلى الله عليه وسلم)، ولكنهم لم يمتثلوا لأمره فتركوا الجبل ولم يتبقى معه غير عدد قليل من الرماة، في ذلك الوقت كان خالد بن الوليد يقود جيش المشركين فاستغل انسحاب الرماة وانطلق ومعه مجموعة من الفرسان إلى أعلى جبل الرماة، فقتلوا عبد الله بن جبير ومن معه، وبدئوا في الهجوم على المسلمين.
وعندما وجد المشركون اعتلاء خالد بن الوليد لجبل الرماة عادوا إلى ساحة المعركة بعدما كانوا قد فروا هاربين، وأصبح المسلمون بذلك محاصرون من كل الاتجاهات.
واشتدت المعركة وأُصيب الرسول(صلى الله عليه وسلم)، وأشاع الكفار أنه قد قتل واستشهد 70 صحابي كان منهم حمزة ابن عبد المطلب عم رسول الله (صلى الله عليه وسلم) وانسحب المسلمون بعدما تحولت المعركة من النصر للهزيمة، ولكن قريش قررت أن تعيد الكرة، وتحاول أن تقضى على رسول الله وأصحابه فأمر الرسول(صلى الله عليه وسلم) بالذهاب لمنطقة حمراء الأسد وعسكر فيها ثلاثة أيام، وكان ذلك رسالة للمشركين بأن رسول الله (صلى الله عليه وسلم) وأصحابه ما زالوا قادرين على القتال وبالفعل اكتفى المشركون بما حققوه ورجعوا لمكة.