El significado de crear un campo foreign key a otro es muy sencillo:
Si en la tabla perfil, el campo id_user es foreing key a id_user de la tabla usuarios, quiere decir que solo aceptará valores en ese campo que existan en la tabla usuarios.
Si en la tabla usuarios tienes como id_user: 001, 002 y 003, en la tabla perfil solo podrá tener esos valores el campo id_user.
Para realizar la foreign key es muy sencillo como bien dices, es necesario que sea innoDB, si vas a la pestaña SQL sería la sigueinte sentencia: