商湯是以武力推翻夏桀建立起商朝政權的。在推翻夏朝的戰爭中,商湯的軍事力量得以發展和強大起來。在建立起商朝統治秩序後,為了鞏固商王統治權,軍隊仍然是不可缺少的國家柱石。
我國上古有“國之大事,在祀與戎”之說,軍事活動在國家政治生活中占有極重要地位,軍事領導體製與政治體製一致,這在殷墟甲骨卜辭中有明確反映,它表現為王朝統擅軍權,商王是軍隊的最高統帥,他直接決定軍事行動,親自或指派將領主持兵員征集、戰鬥動員並率軍出征。軍隊的高級軍職由王室貴族擔任,族邑之長則為各級地方武裝的首領。族邑之長平時管理具有平民身份的眾人及奴隸從事生產勞動,戰時受商王調遣,率領由眾人組成的軍隊出征作戰。這就是類似恩格斯在《軍隊》中所說的“以奴隸製為基礎的民兵製度”。這種亦兵亦民的民兵是商代軍隊的主體,其中王室貴族的族軍是一支基幹力量。商代晚期,隨著內部階級鬥爭和對外征伐的需要,雖然主要作戰部隊是按族邑臨時集結,但有跡象表明某些族軍已有了固定的軍事編製、兵員有固定的軍籍和等級隸屬關係,卜辭還反映已有了一些常駐的師旅所在地,守衛部隊也有了一定的軍職寮署,所以雖然大部分兵員平時不脫離生產,但以貴族為骨幹,已有了一些較長時間在軍服役的人員。這些可以視為常備軍性質的萌芽。
臣服商王的各方國也以其首領(稱為方伯)為統帥,以各級奴隸主貴族首領為軍事首長,以所屬之平民組成方國的軍隊。這些軍隊除維護方國的統治外,還要聽從商王的調遣,執行征伐的任務。
商代軍隊的士兵大部分是從農業勞動者(“眾”)中征集來的。奴隸主貴族子弟是軍隊的骨幹,奴隸一般沒有服兵役的權利。商代兵役的情況,前期因缺乏文獻記載和實物資料而不得其詳。商代後期,從已有甲骨文材料看,主要是采取臨時征集的方式,這種臨時征兵製,在當時叫做“登人”。甲骨文中,常有“登人三千”、“登人五千”之類的記載。最多一次達“登旅萬”。即征集了以旅為編製單位的軍隊萬人;在戰爭中,商代統治者也常因兵力的缺乏而臨時將非自由人組織起來強製投入戰場,在牧野之戰中商紂曾武裝奴隸以抵禦周兵。卜辭中也有以臣仆投入戰爭的記載,征調這批人時不用“登”,而用“呼”、“挈”,意即命令其主人帶領他們參加。有時候甚至用“執”,表示是以強製手段將他們納入商代軍隊的編製,根據古文獻的零星記載和甲骨文的卜辭,大體可以判斷,在武丁及其以後時期,有了“師”、“旅”、“行”幾級的編製,每級又各分為右、中、左三部。師是最高軍事單位,武丁時僅見“中師”,武乙時則“乍三師,右、中、左”,均見於甲骨文。師的軍事首長稱“師”或“師長”。師以下的編製單位是旅,卜辭中有“右旅”、“王旅”、“左旅”,“王旅”疑即“中旅”。行是軍行,分大行和行兩級。卜辭中有“東行”、“中行”、“上行”,還有“右旃”,“上行左”等,旃是徽幟,左是上行的旌旗徽幟,可見上行即左行,東行為右行,而右、中、左三行合稱一“大行”。行以下編製名稱不可考,一般認為是按十進製編成。因為甲骨文中涉及武裝活動的人、馬、射手都是以十、百、千或其倍數為單位;王陵中隨葬的成批的矛,也是十支為一捆,所以可能是十人為一最小單位,十個最小單位,即一百人為一軍行。右、中、左三行構成的一個三百人大隊為一“大行”。“旅”有人認為是一個千人組織,但從卜辭“登人三千、登旅萬”看來,一旅也可能是十個大行,共三千人,右、中、左三旅合成一師,徒兵九千,加上戰車甲士等號稱一萬。右、中、左三師共三萬人則為商代軍隊總數。關於商代軍隊編製人數,學術界存在不同看法,正在探索之中。然而,商代軍隊已有了一定的編製體係,而且是以十進製為基礎並按實戰的需要重以三進製,則是可以肯定的。