The 'retain' keyword is used to claim ownership of an object upon assignment. This increments the reference count, ensuring the object stays in memory. Assign doesn't claim ownership, readwrite is about accessor generation, and copy creates a new instance.