Adding user to a group (usermod or gpasswd)

I believe there are two methods of adding a user to a group. using usermod and gpasswd. but most of the time we tent to use user mod. does there any difference between these two methods ....

gpasswd -a geek admins 

usermod -a -G admins geek

both code add user geek to a group admin

gpasswd only administers group memberships, usermod is a more general-purpose too.