A charm is something helpful that orbits your head during battle, like a blade, accuracy boost, or healing boost. If you cast Steal Charm on an enemy, one charm gets removed from that enemy and placed on you. Example: enemy has Balance Blade on them to boost their next damage attack on you. You cast Steal Charm, and all of a sudden they have no blade, and you are wearing a Balance Blade for your next damage spell.
If the enemy has multiple charms orbiting them, I don't know if Steal will take the most recent one put on, or a random one. Anyone know?