张杨早年以有武艺并且勇敢在并州任职,为武猛从事。
[188年],汉灵帝以所宠信的小黄门蹇硕为西园上军校尉,在京都治军,欲以控制四方,徵招天下豪杰。并州刺史丁原派张杨带兵去拜见蹇硕,张杨被任命为代理司马。
[189年],汉灵帝驾崩,蹇硕被何进杀掉。张杨归属何进,被派遣回本州招兵,得到千余人,留在上党,讨伐山贼。后来,何进被杀,董卓作乱,张杨于是率领部队进攻上党太守于壶关,不能攻下,转略诸县,部众达到几千人。
[190年],关东诸侯联盟讨伐董卓,袁绍来到河内,张杨与他联盟,后来又与匈奴单于於夫罗一起屯于漳水一带。单于打算叛逃,袁绍、张杨不听从,于是单于劫持张杨一起离开,袁绍派麹义去追击,在邺城南面击败了他们。单于又劫持张杨来到黎阳,攻破了度辽将军耿祉的部队,部众又振作起来。董卓任命张杨为建义将军、河内太守。
[195年],李傕、郭汜相争,汉献帝东归,张杨带兵至安邑接应,被任命为安国将军,封晋阳侯。张杨想迎接汉献帝回到洛阳,诸将不听,于是张杨回到野王。
[196年],杨奉、董承、韩暹等人挟持汉献帝还于洛阳,缺乏粮食。张杨带着粮食在半路迎接,送至洛阳,之后又还于野王,被拜为大司马。张杨一直没有挟持献帝的野心。
[198年],曹操围攻吕布于下邳,张杨与吕布一向友好,想去救他,不能够到达,就出兵于东市,遥为声势。张杨的部将杨丑杀了张杨来响应曹操,杨丑的部将眭固又杀了杨丑,带领部队向北想投奔袁绍。曹操派史涣截击,在犬城斩杀了眭固,吞并了他的部队。