The ash in PN and WS biochars played important role on Zn immobilization. The higher pyrolysis temperature on the feedstock leads to the higher sorption capacity of Zn2+ and the larger fraction of Zn precipitates/minerals on biochar. Hydrozincite and Zn(OH)2 were the main species formed on PN350, PN550, and WS350; while on WS550, besides hydrozincite, a large fraction of hemimorphite was formed. The formation of OH−, CO32−, and Si species on biochars and the release of these species played predominant role on Zn immobilization.