With Earn, your crypto is lent to third parties to make a profit on it. The resulting profits are distributed as rewards for making the crypto available. With staking, you get rewards for validating transactions on a Proof of Stake blockchain, so the crypto is not lent out and remains entirely in your possession.
Updated over a week ago