A sale involves using an offer, which in turn requires an NFT to be exchanged for XCH (support for CATs will be added later). Any time you want to buy or sell an NFT, you will create or accept an Offer. Royalties are built into the NFT, so they will automatically be accounted for when the offer is created/accepted.
A transfer is where you move an NFT from one address to another. No money is exchanged, and there are no royalties. The two main use cases for transferring an NFT are
- Moving an NFT to another wallet that you own
- Giving an NFT away for free