曹操一连下达了两个命令,有开始调动军队,吸引袁尚、袁熙还有乌桓的注意力,给张郃制造机会。
张郃从并州进入代郡之后,直接从班氏县向西北攻打北平邑,然后北上代郡治所高柳。拿下高柳之后,张郃派出偏师北上马城,他自己南下道人、狋氏。因为他接到了曹操的命令,所以需要直接平舒南下,到冀州广昌,然后穿越长城,到易水源头之下。
在平舒的时候,再一次派出偏师进攻东安阳、代县、当城、桑干。
张郃从易水直接到了故安,乌桓没有想到这个方向有敌人。张郃突然杀到,乌桓措手不及。
乌桓一般在右北平、辽西、辽东三郡活动,但是以辽西蹋顿为首。蹋顿和袁氏的关系非常好,所以这一次也是蹋顿带兵前来的。蹋顿当过九年的乌桓单于,因为他不是上一任乌桓单于丘力居的儿子,只是从子。不过丘力居死的时候,他的儿子楼班还小,所以蹋顿代为掌权。
也就是这个时期,袁绍封了四郡郡乌桓首领蹋顿、难楼、苏仆延、乌延为单于,也是在这个时候承认了蹋顿单于的地位。虽然后来三郡乌桓后来又奉楼班为单于,但是这种感情乌桓一直都记着的。
这一次蹋顿带着的是上谷乌桓难楼、右北平乌桓乌延,纠集了一万多乌桓士兵。
乌桓纵然全民皆兵,但是却没有任何军纪,被张郃冲击,直接就一哄而散。有的是被吓到了,有的则是想要先脱离张郃的攻击然后再聚集。张郃看到了乌桓四散而逃,立刻带兵追击,张郃麾下也是有骑兵的,直接带上骑兵去追击。
结果乌桓从假败变成了真败,一直退过了涿县才逃出张郃的追击。张郃这一战收获颇丰,斩杀了乌桓一千多人,获得战马两千多匹。
打败了乌桓之后,张郃立刻回转范阳。
范阳袁尚、袁熙也已经知道了乌桓兵败的事情了,乌桓大败影响了军中士气,两兄弟一商量决定撤退。
但是曹操比他们还要早知道,他先一步到了范阳县。正好赶上袁氏兄弟撤兵,曹操直接挥军追击,于是又是一场撤退变败仗。袁氏兄弟可没有乌桓的逃跑经验,还没有到涿县,就被曹操打的打败。两兄弟只带着千人左右的骑兵,北上上谷。
但是经广阳郡的附近的时候,他们发现了广阳一带竟然也有曹军。他们到了上谷之后,和难楼聚在一起。难楼得知广阳出现曹兵,立刻和袁氏兄弟说他这里不安全了,让他们去投奔蹋顿,辽西地方偏远,曹操根本无法攻打过去。袁氏兄弟一听,感觉很有道理,立刻告别难楼向辽西进发。
曹操和张郃兵合一处之后,直接攻打下涿县,然后派兵东攻方城、西攻遒国、北攻良乡。
涿郡全部拿下来,曹操又将目光投向了上谷郡。袁氏已经败亡,上谷最大的威胁已经不是那里的守军了,而是位于上谷的乌桓难楼部。
曹操在涿县并没有呆多长时间,直接北上上谷,直接到了郡治沮阳,然后派兵讨伐难楼。难楼在故安一败,已经元气大伤了,如何还是曹操的对手?一战之后更是损伤惨重,不得不向东,跟随袁氏兄弟去投靠单于王庭去了。