Annihilator triggers at the beginning of the declare attackers step, the moment the creature with annihilator is declared as an attacker. This means the defending player must sacrifice permanents before they even get to declare blockers, which happen in the very next step.
According to CR 702.86a, annihilator triggers 'whenever [the creature] attacks.' Under CR 509.4, triggered abilities that trigger during the declare attackers step go on the stack after attackers are declared and resolved before moving to the declare blockers step (CR 509.5).
This sequencing is what makes annihilator so powerful: the defending player may be forced to sacrifice key creatures, planeswalkers, or lands before they can even attempt to block. They cannot 'save' a creature from annihilator by using it as a blocker.
Example: Your opponent attacks with an Eldrazi that has annihilator 2. Annihilator triggers; you must sacrifice 2 permanents. You sacrifice two lands. Only after that resolves does the game move to the declare blockers step, where you assign your remaining creatures to block.
The condition here is straightforward — annihilator always triggers on attack, and the sacrifice always happens before blockers. There is no scenario where blocking happens first.
Unofficial fan resource — not affiliated with or endorsed by Wizards of the Coast. Answers are AI-generated estimates grounded in the Comprehensive Rules and are not a substitute for an official judge. Verify anything match-critical.