首先是波斯人的兵力,同歷史上的很多東方民族一樣,波斯人也有著誇大其詞的毛病。後來的伊蘇斯戰役出動二十萬、高加米拉大戰出動一百萬大軍之類的說法不絕於耳。「萬王之王」薛西斯一世徵希臘的戰役也不例外,波斯人出動的兵力在不同的記載裡有三百萬到二十萬不等,某些希臘作家也出於或嚇唬希臘人,或讚揚希臘人的目的誇大了波斯軍力。但是按照目前的學界研究,認為波斯軍隊有8到10萬步兵(包括徵發來的各民族雜兵)、1到2萬騎兵是比較恰當的說法,上限也就15到20萬,50到100萬幾乎沒有可能。
要談清楚斯巴達的兵力,首先要搞清楚斯巴達的軍制。作為古典軍國主義國家,斯巴達具有濃厚的「全民皆兵」特徵,但是關鍵看怎麼定義這個「民」——在斯巴達的語境裡,只有公民才算民,這些人是具有斯巴達公民身份的城市自由民與奴隸主,可以蓄斯巴達的長鬍子與披上代表著榮譽的紅色長袍,他們裝備精良,配備沉重的愛奧尼亞式頭盔、青銅胸甲,戰時成為軍陣中堅重步兵。由於斯巴達僅僅是一個非常小的城邦,重步兵人數根本沒有多少,說他們在溫泉關戰役中出動了三百人,那基本上就是全員出動的水平了。
比斯巴達公民次一等的,是住在斯巴達城邦郊區或農村的農村自由民或者小奴隸主。他們組成了斯巴達社會的第二個層級:邊民。相比較斯巴達重步兵,邊民同樣有上陣殺敵的責任,但是他們的裝備比較落後,只有輕型的頭盔或者布甲/皮甲,承擔近戰刀盾兵或方陣槍兵的職能。斯巴達的邊民軍隊數量大約有三千到四千人。
構成斯巴達社會底層的則是悲慘的希洛人,又譯為「黑勞士」。他們在斯巴達社會中完全處於被統治和奴役的地位,不僅承擔著斯巴達城邦農業生產與手工業製造任務,戰時還要成為斯巴達的炮灰。而斯巴達在訓練公民少年兵的時候往往更是殘酷無情地將黑勞士列為屠殺的對象以訓練少年兵的膽量。黑勞士的炮灰兵數量又比邊民多一個數量級,大約有數萬人之多,戰時多擔任投石/標槍手。
在溫泉關戰役中,斯巴達公民步兵出動了300人不假,這些人以其精良的裝備和嫻熟的戰鬥技巧死死扼守住溫泉關要隘,職業軍隊加上盾牆的威力迫使依靠大量裝備五花八門、訓練層次不齊以種田為主業的徵召兵作戰的波斯軍隊損失慘重。但是同時,這批斯巴達人還有1000到2000人左右的黑勞士標槍兵隨行,還有2000人左右的阿卡迪亞輔助兵在側,加上其它小城邦諸如邁錫尼、柯林斯等雜七雜八的助戰部隊,倒真的是合上了詩人西摩尼德斯在溫泉關之戰後為陣亡者所寫的 「四千名伯羅奔尼撒人曾在這裡∕對三百萬敵軍奮戰」 的詩句。