Billy Boyd as Peregrin "Pippin" Took