So lower ranks can play with higher ranks but higher ranks can only play with lower ranks if they use their lower rank stuff only. Will the higher rank guy still get XP though if he plays in lower ranks? I doubt it will level him up though.
The way I understand it is:
Lower ranks can join higher ranked lobbies if they want. No restrictions will be put on the higher ranks because the lower rank is opting to play at their level, though he may be somewhat disadvantaged.
Higher ranks can join lower ranked lobbies by joining a fire team with someone lower ranked. The higher ranked person will then only be able to use abilities available to players at that rank so he doesn't have an advantage. I honestly don't know if he can choose to join a lower level lobby by himself, and I doubt it because I don't think it would make much sense.
As for your XP question, the higher level player should still get XP. And I don't think XP received increases as you level - it probably just takes much more to do so. So he probably won't level any slower (or quicker for that matter) than he would normally.
EDIT: @gotcha - your characters level separately, meaning one may play in a rank 5 lobby by default while another plays in a rank 2. And if that's true, there's no reason a high level shouldn't be allowed to play in low level lobbies.