I'm pretty sure (I might have them backwards) that punch means it does damage to blocks behind the impact point, and pierce means that if a 300 damage projectile was shot at a pile of 100 hp blocks, it would hit the first one, break it, and the projectile would have 200 damage remaining, then...