而后,刘备兵进绵竹,刘璋任命李严为护军,率绵竹残余部队与刘备军作战,可是李严却在不久率军投降于刘备,如此绵竹被占。张任、刘璝等剩下忠诚于刘璋的军队则继续退往雒城,与刘璋子刘循在此抵御刘备的进攻。
之后,刘备进军雒城,张任率军在雒城外的金
雁桥与刘备军决战,可不幸战败,张任被俘。被俘后,刘备希望张任投降于他,可张任却说"老臣我终究是不会侍奉二主的",如此,刘备见他不降,也不愿意放他回到刘璋身边,给自己添麻烦,最终张任被刘备下令斩杀。
所以,刘备会杀张任的原因很简单,因为张任誓死不降,他始终都忠于刘璋,即使刘璋再暗弱,张任也没有向张松、法正一般,为了自己所谓的志向去背叛刘璋,他是位真正的忠臣。因此,刘备见他如此忠诚,又至死不降,刘备也没有办法了,毕竟张任不降,刘备也不想放他回去,再给自己添麻烦,于是张任的结局最终就只有一个,那就是死。
"老将安能扶二主?张任忠勇死犹生。高名正似天边月,夜夜流光照雒城。",这就是忠义无双的张任,刘璋身边仅有的几位忠臣。