Undying is a triggered ability that says “When this creature dies, if it didn’t have any +1/+1 counters on it, return it to the battlefield with a +1/+1 counter.”
Most players know that +1/+1 counters and -1/-1 counters will cancel each other out if they’re on the same creature. This is a State-Based Action (“SBA”). However, there is another SBA that says that if a creature with toughness 0 or less is on the battlefield, it is put into the graveyard. It’s important to know that SBAs don’t have a special “order” to how they’re applied. If more than one SBA would happen at once, they all happen as a single event.
This can be confusing when you have a Strangleroot Geist that has already died and come back with a +1/+1 counter, then a player casts Black Sun’s Zenith for 2. After it resolves, the game sees two things: (1) A creature has a +1/+1 counter and a -1/-1 counter on it, so one of each must be removed; and (2) a creature has 0 toughness, so it must be put into the graveyard. These two things happen at the same time, but the key point is that there is no “in-between” place where the Geist is both on the battlefield and without a +1/+1 counter on it. So after it dies, the Undying ability looks to see if it should trigger, but it looks back at how the Geist existed at the moment before it died. At that time, it had a +1/+1 counter (and two -1/-1 counters). Undying won’t trigger, and the Geist won’t be returned. The same logic can be applied if the Geist takes 2 damage from a creature with Infect.
There is even a shiny new rules entry to address this somewhat unintuitive interaction, just to make it clear:
704.7. If a state-based action results in a permanent leaving the battlefield at the same time other state-based actions were performed, that permanent’s last known information is derived from the game state before any of those state-based actions were performed.
Today’s Rules Tip written by
Josh Stansfield, Level 2 Judge from Orange, CA