No tiene ninguna ventaja añadida a parte de poder o no albergar los datos que piensas usar como PK.
Si la PK es alfanumérica y de una o varias logitudes deberás usar uno u otro.
Por ejemplo si vas a usar el DNI de un pais como pk podrás usar char de la logitud fija de los DNI y vas a usar bien la longitud fija que reserva este tipo de campo. Si vas a mezclar DNI y Pasaportes de distintos paises es mejor usar varchar ya que la longitud no es fija y solo se va a usar el espacio que sea necesario en cada caso (mas un bite o dos)....
Aquí lo explican mejor
http://dev.mysql.com/doc/refman/5.0/es/char.html
Otra opción es usar una PK numerica auto incrementada y dejar como clave alternativa esas claves mas complicadas (como las del ejemplo) usando un indice único para controlarlas...