The Dealing Damage process is an integral part of the game. This tutorial is aimed at aiding the understanding of its timing points for interrupts and reactions, and its process resolution end point.
The timeline below assumes that dealing damage is being initiated by an attack. If it's been initiated otherwise (eg by an event), ignore the attack references.
Each Interrupt and Reaction Window lists examples of the triggering conditions that can be triggered in its window.
Interrupt Window: (when: attacks, declared as an attacker, exhausts)
Declare attacker
Reaction Window: (after: declared as an attacker, exhausts)
Interrupt Window: (when: declared as a defender, declares an attack)
Declare defender
Reaction Window: (after: declared as a defender, declares an attack)
Interrupt Window: (when: damage is assigned/assigns damage)
Step 1: Assign damage
Reaction Window: (after: damage is assigned/assigns damage)
Interrupt Window: (when: shield card is used)
Step 2: Shields
Reaction Window: (after: shield card is used)
Interrupt Damage Window: (when: is damaged/damages, takes damage)
Interrupt Destruction Window: (when: is destroyed/destroys, leaves play)
Step 3: Take damage
Resolution EndPoint: The Dealing Damage and Attack processes are considered resolved.
Reaction Window: (after: is damaged/damages, takes damage, is destroyed/destroys, leaves play, resolves its attack)
All reactions in the same window can be done in any order. For example, in the last action window, you may do:
After a unit is destroyed, ...
After a unit resolves an attack, ...
After a unit leaves play, ...
After a unit is destroyed, ... (a different one)
etc
This is why there are two separate interrupt windows before Step 3. The game allows interrupts to being damaged to happen first, which usually prevents some of that damage and therefore prevent a unit's destruction. If there was just the one interrupt window, you'd otherwise be allowed to initiate advantageous interrupts to a unit being destroyed, and then prevent it being destroyed. This double interrupt window is the same in Star Wars btw, for those who play that.
If a unit is destroyed, it leaves play as part of step 3, before the process resolution endpoint. A unit's destruction cannot be reacted to before Step 3 finishes however - Step 3 is considered atomic (as are each of the other steps), and reactions cannot be triggered until Step 3's reaction window opens.
Note that any event card that initiates the dealing damage process (if that's all it does, eg Tzeentch's Firestorm) will be placed on its owner's discard pile at the resolution endpoint.
Many interrupt and reactions have the clause "by an attack" in its triggering condition. These will only trigger if the dealing damage process is initiated by a unit performing an attack sequence. They will not trigger for instance by initiating a card effect that deals damage while a unit is attacking (for example, Area Effect or an action).
If a unit is using Area Effect, then the steps of Declare Defender and Resolve Attack (consisting of Step 1, Step 2 and Step 3 of the Dealing Damage Process) do not happen for this attack. After declaring your attack and completing its reaction window, you then (instead of doing the said steps) resolve the Area Effect ability, which performs the three steps of the Dealing Damage process to each affected unit - damage to each affected unit is assigned simultaneously, 1 shield card may be played against each unit, then all remaining damage is taken simultaneously. After this Step 3 has completed, the resolution endpoint is reached and the attack is considered resolved. Note that any damage dealt by Area Effect is NOT considered to be damage by an attack - it is damage dealt by a card effect (per the RRG Area Effect section). Because it happens during an attack however, it is considered to be dealt "while attacking". This is a subtle but important distinction.
I hope this helps. If you have any questions that will help me clarify the process further, please ask.