Bluesky has:
Identity via DIDs. With web DIDs this identity is tied to your domain name and there is no bluesky infrastructure associated with it. It's 100% in your hands (but you can't change names or domains easily). But alternatively you can use a plc DID which does use their centralised infrastructure (currently) while allowing you to easily change your name or domain. With these you get one DID per account.
PDS (personal data servers) or "data repositories" that hold your post content. You can self host this or use Bsky's central PDS. You can only use one of these per account.
Indexers that aggregate posts from all the PDS/data repos. These create what bluesky calls "the firehose".
Relays that route and cache traffic.
App views which give you your actual application like bluesky.
Feed services that give you your "algorithm" for what your page looks like. You can subscribe to as many of these as you like or host your own.
Then you finally get labellers like what is discussed here. Compared to with mastodon you can follow multiple labellers at the same time. Those labellers can provide automated content warnings, etc or manual moderation. But importantly at the end of the day no matter what the labellers do, you control how they act and whether they are just a warning/blur or if they actually hide the content.
----
That all compares to mastodon where everything is tied up under one server/instance and your control over moderation boils down to "run your own instance and do all the mod work yourself" or "rely on some other instance with no oversight whatsoever".
This isn't to say that mastodon's approach didn't make sense at the time but like you said the bluesky approach makes quite a bit more sense and makes it way easier for the user to move around between their options.