由於羅馬控制著海域，迦太基名將漢尼拔被迫避免海上進攻，而從陸路把戰火帶進義大利半島，不像第一次布匿戰爭，海軍在此戰的角色微乎其微，唯一一場海戰發生在第一年－利利俾之役（Lilybaeum，位於今日馬爾薩拉，時年公元前218年）以及厄波羅河之役（公元前217年），而兩場皆由羅馬獲勝，儘管總題而言數字相差不大，迦太基並不認為羅馬嚴重的挑戰其威望，羅馬艦隊當時的任務在於襲擊北非以及護衛義大利，其中最重要的就是截取迦太基對漢尼拔軍隊的物資供應，同時監視著迦太基的盟友－腓力， 唯一的主要攻擊行動是在馬克盧斯率領130艘船艦攻擊叙拉古，當時攻城器械相傳是阿基米德所發明的，例如以鏡子燒毀敵艦，憑此圍困敵軍長達兩年之久， 公元前202年大西庇阿率領約160艘船艦登陸非洲，隨後西庇阿在札馬戰役勝利後迫使求和的迦太基放棄所有艦隊。