Mint interoperability happens over the lightning network. So as of now, tokens have to be melted at one mint, sent over LN to the other mint, and then minted at the other mint. This is what has to happen under the hood.
The tokens are created using the mints private keys for signing, so there is no way of sending a token from a different mint, because the mint won't be able to verify the token.
In practice though, a user can create a mint request from one mint, and pay it with a melt from another mint. So it is almost the same 2-step process of sending/receiving (using invoice instead of token), just what happens under the hood is different. Maybe a good wallet can abstract a lot of this away, but for now, i think it's important for users to know the difference, we're still learning