بعد إعلان روما الحرب على قرطاجة بذريعة إخلالها بمعاهدة زاما، سارعت السلطات القرطاجية لتجنب الصراع بإرسال بعثة إلى مجلس الشيوخ الروماني (149 ق.م) عرضت الاستسلام. طالبت روما أولاً بتسليم 300 رهينة من أبناء الأعيان، وأسطول قرطاجة وأسلحتها بالكامل (200 ألف سلاح و2000 منجنيق). وبعد إذعان القرطاجيين لهذه الشروط، قدم الرومان مطلبهم النهائي والصادم: إخلاء قرطاجة لتدميرها والاستقرار في مكان يبعد 15 كلم عن البحر، مما يعني التخلي عن هويتهم البحرية والتحول لمزارعين. اعتبر القرطاجيون هذه المطالب غير مقبولة، لأنها تعني الحكم على مدينتهم بالموت، وفسر المؤرخون ذلك بجهل البونيقيين بالقانون الروماني. فور عودة المبعوثين وإعلان المطالب الرومانية، اندلعت أعمال شغب في قرطاجة قُتل فيها أعضاء مجلس الشيوخ المؤيدون لروما والإيطاليون، معلنةً بذلك اندلاع الحرب الصريح. اختار القرطاجيون المقاومة كخيار وحيد للدفاع عن ماضيهم وهويتهم، معتبرين التدمير بمثابة زلزال ديني. وبدأت تعبئة عامة شاملة: تحرير العبيد لتجنيدهم، تصنيع الأسلحة بكميات كبيرة، وتقديم النساء لشعرهن ومجوهراتهن، وبناء أسطول من عوارض المنازل، وتعيين حصدر بعل قائداً للجيش. حاول الجيش الروماني الضخم (حوالي 80 ألف جندي) اقتحام المدينة، بينما واجه القنصلان الرومانيان، اللذان يوصفان بعدم الكفاءة، تحصينات قرطاجة المنيعة. كان موقع المدينة شبه الجزيري وجدارها الدفاعي الثلاثي على البرزخ، الذي يبلغ سمكه 8 أمتار بطابقين وأبراج كل 60 متراً، إضافة إلى 72 ألف جندي و300 فيل، يجعل الحصار صعباً. هذه الدفاعات القوية أحبطت المحاولات الرومانية الأولى بقيادة مانيليوس وفيلريوس في الاختراق، رغم نزع سلاح القرطاجيين سابقاً. في غضون ذلك، عسكر جزء كبير من الجيش البونيقي بقيادة بويتارك في "نيفيريس" خارج قرطاجة، بهدف مضايقة قوات العدو وقطع اتصالاته بحلفائه. كانت روما قد أثارت استياء ماسينيسا بعدم إعلامه بنوايا الحرب، لكنها رفضت عرضه للمساعدة لاحقاً. حاول مانيليوس تدمير نواة المقاومة في نيفيريس، لكن هجومه على بويتارك فشل، واضطر الجيش الروماني للانسحاب. أنقذ سكيبيو إيمليانوس، الذي كان قد ساعد في تقسيم السلطة بين أبناء ماسينيسا بعد وفاته عام 148 ق.م، العديد من الفرق الرومانية، مما أكسبه تكريماً. تزامن ذلك مع انشقاقات في المعسكر البونيقي، حيث انضم غولوسا إلى الرومان، وغير هاميلكار ولاءه بعد فشل مانيليوس المتكرر.