I've recently had to move a DNS ownership from one DigitalOcean account to another. During this process I've noticed that the www A DNS record propagates a lot faster than the @ A DNS record. Why might this be?
You have to take into account the TTL for a record and understand that when it comes to propagation, timing is everything. For example, if your TTL is 1 hour, and a DNS server refreshes its copy of your record 1 minute before you changed the record, you now have to wait 1 hour (roughly) for that server to get the new record info. But, let's say the server checked for updates 59 minutes before you changed the record, now it's only going to take 1 minute for the new record to show. That being said, that's likely all it was - just the timing of when the existing copies of the records expired upstream. It's also a sort of domino effect/chain reaction. If server C gets its records from server B, and server B gets its records from server A, and server B just got it's update 1 minute before the change, and server C got its update 30 minutes after that, you now have to wait about 1.5 hours for server C to get the updated info.
In general, when changing records and wanting the least amount of propagation wait, I change the TTLs as low as it'll allow for about 3 days in advance to let that propagate, then I'll change the record addresses and TTL back to what I wanted originally, knowing it'll take much less time to get the new info propagated.