坎尼會戰歷史背景:羅馬軍隊試圖直接擊敗漢尼拔
據現有僅存的資料顯示,迦太基(Carthage)的建城時間比羅馬要早,據認為曾有居民七十萬人,佔地三百一十五公頃(3.15平方千米)。但確切時間無從考據,而現代學者一般採用公元前815年建城之說。
在第二次布匿戰爭開始時,迦太基將軍漢尼拔在冬季時率領大軍經阿爾卑斯山進入意大利,並迅速地連敗羅馬軍兩次(特拉比亞會戰與特拉西梅諾湖會戰)。經過這些敗績後,羅馬人委任費邊為獨裁官,其決定與漢尼拔打消耗戰,並截斷其補給線和拒絕與之正面交戰。但是這些戰術並不為羅馬人所認同。當羅馬人在漢尼拔大勝的驚訝中醒覺過來後,開始懷疑費邊戰術的有效性,結果給了迦太基軍隊回復元氣的機會。費邊的戰略使得那些極欲在短期內終結戰爭的主流人士感到失望。而且當時人們亦普遍相信若任由漢尼拔在意大利搶掠而不阻止的話,則羅馬的同盟們可能會背叛並與迦太基人結盟,因為其會因羅馬的消極戰略使認為羅馬無法保護自己。
在前216年,羅馬元老院重新開始執政官選舉,並選出發羅與鮑羅斯為執政官。與此同時,一支空前龐大的軍隊組成了。據希臘政治家和歷史學家波利比奧斯所載,「其欲派出八隊羅馬軍團往戰場,這是羅馬史上首次,每一個軍團有著大約五千人……以往羅馬人的戰爭大多只是由一名執政官與兩隊羅馬軍團負責,並由羅馬的同盟分擔部份兵力,同時召集四隊羅馬軍隊在同一場戰爭裡已很罕見。但在此次,形勢極為險峻,所以羅馬決定派出不只四隊而是八隊羅馬軍團前赴戰場。大軍包括了二千四百名羅馬騎兵與四千名同盟騎兵,總共有八萬六千四百至八萬七千名士兵。每一軍團有著相同數量的同盟軍備隊(步兵與騎兵皆是),面對漢尼拔的羅馬軍隊數量差不多有九萬人。部份人估算羅馬軍隊數達十萬人,但這個數字並不能被完全證實。