赵营第一线只有这三座营垒,其他营栅都在后面。这三个营栅就交给三个亲营了:公大夫的亲营在中,胡阳的在左,司马靳的在右。在距营栅约百步时,赵军开展射箭,但由于秦军第一排都是盾牌兵,这些箭的杀伤力不大。硬往前走了二三十步,就在赵军的步兵冲出营门,发起冲锋时,秦军瞄准营门射出了第一支箭。营门周围人群密集,大家正在往外跑步冲锋,防御也不严,虽然每人只射了三支共三百支箭,但由于线路交叉,中箭不下百人。随着“起”的口令,一百盾牌兵、二百矛兵和一百矛戟戈兵从行步变为快步,只三四十步的时间,就与赵军迎面相撞。赵军刚出营门,阵型不整,一些盾牌兵还未做好防御准备,就被矛斜着刺了进来,刺中后又被强力推开。数支长矛从打开的豁口处刺入,并强力推入,深入到阵型内部;随后戟戈兵大展神威,从后面将盾牌兵砍倒。只去了保护的赵军顿时成了待宰的羔羊,多数逃走,少数留下抵抗的都被刺翻砍倒,随后被斩下首级。伏在步兵身后和弩兵在得到口令后,起身向逃跑的赵军再射一箭。然后众军直冲入营栅十人一组杀散赵军,夺取了营垒。
几乎在这同时,左右两营也以大致相同的战术,先后杀散赵军,占领了营垒。
才一交锋,赵军就失去三座营地,后面赵军迅速反扑过来。占领了营垒的秦军迅速进入阵地,伏在营垒后面,准备抗击赵军的冲锋。
赵军也在射出三支箭后发起冲锋。双方在营垒上和营门处盾牌对盾牌顶在一起。后面的戟戈兵则用力顶着,试图从盾牌之间掀开一条缝,伸进兵器去。但这条缝十分难以打开,偶尔打开了,也没有足够的空间进行冲刺,反而被对方握住柲杆,抢走兵器。
胶着之间,后面的营赶到了,他们穿过营间的空地,直扑赵军两翼。正在和秦军顶牛的赵军见涌来一股生力军,顿觉大势已去,鸣金收兵。从两翼突入的秦军紧随其后,不断寻隙刺倒砍翻几个赵军。终于,赵军立足不住,阵型开始散乱,被秦军乘虚而入,冲散了部队。而这时,占领了第一道营垒的秦军,在留下伤员后,又整队杀了过来。再后面,司马靳擂着鼓,率领后军快步前进。
在二线秦军追击赵军进入第二道营栅时,赵军的援军已经赶到营前,秦军匆匆整队,猛地撞了上去。僵持之中,秦军三支亲营赶到,以多打少,两翼突破,再次打散赵军,并追击至第三道营栅。
第三道营栅的赵军被杀散后,并无赵军反扑。冲进营垒的秦军抬头看时,赵军正在前面的营垒前结阵。一面大旗迎风飘扬,旗下战鼓咚咚,四散的赵军蜂拥向那面大旗奔去,被接引到阵后列阵。
公大夫命全军停下整队,稍稍清点了一下人数,伤亡不大。由于司马靳给他增援了两个营,公大夫实际可投入作战的是八个营,现在才动用了六个营,就已经占领了三道营栅。这让公大夫信心倍增。见赵军正在集结后军列阵,公大夫决定不等赵军列阵完毕,就发起一次坚决的突击。他下令道:“突阵!”
三营盾牌兵先出营,排在第一列;八营所有的长矛兵列在他们身后。然后是盾牌兵和戟戈兵相间的部队,在营地中列阵。公大夫把八营集合成了一支打击力量。
一声“起”后,由盾牌兵掩护的长矛方阵缓缓开进。其余部队跟在他们身后三四十步远的地方,以便随时支援。
赵军结阵的地方并不宽阔,也就三个营地的范围:三个营在营前结阵三个营在营地间结阵,形成方阵相互交错的“鱼鳞阵”。前军九个营只用了一个时辰左右就土崩瓦解,但为后军赢得结阵的时间。后军十二个营采用这种间错的方式,在有限的地域上勉强结成阵势。见秦军结阵杀来,赵军也擂响战鼓,严阵而进。
秦军是八营合成一阵,口令已经难以指挥,公大夫遂吹响了号角,长矛兵遂将长矛架在前面士兵的肩头上。又行十余步,赵军阵内箭雨飞来,盾牌兵稍稍抬高盾牌,盾牌上噼里啪啦一阵响声,少数几支漏过箭射中了后面的几人,有人倒下,但多数拔出箭来,继续前进。
眼见两军相距不过五十步,赵军鼓声大作,秦军这里两声长号,两军跑步向对方冲撞过去。盾牌兵在冲撞的一瞬间,把自己肩上的矛信对方两只盾的接缝处用力一挂,对方盾牌兵力气稍小的,就被长矛插进盾牌之中。矛兵就势一搅,硬挤出一条空当来,身后的长矛见缝插针,直刺而入。而这时,盾牌军猛往两边挤压对方,再后面的矛兵也用长矛推压。完整的盾城露出破绽,长矛兵挻矛而入。赵军的长矛兵奋力堵塞漏洞,但盾牌既已洞开,长矛兵就挻着长矛直冲过来。
赵军最大的不幸是排列成鱼鳞阵,当第一线接敌时,两翼没有对方宽阔,被秦军从两翼漏入,前面的阵型顿时被打破。而当后面的赵军赶上时,突破了中间的秦军又向两边卷杀。虽然这里赵军左右还有两营未动,但变阵不及,就被后面盾牌兵和戟戈兵组成的奇兵纠缠住,无法向中央卷击。
秦军以伤亡百余人的代价透过第一阵,杀到第二阵旗鼓车面前。这里的营兵虽然战斗力强大,但秦军矛兵是集中了八营所有,除了受伤的,足有千人。赵军在两翼被包抄的情况下,尽管悍不畏死,拼命抵抗,也不过是徒增伤亡,并没有支撑太长时间,旗鼓就陷入秦军之手。