C gets priority back after casting a spell. A gets priority after it resolves.
Here's the relevant rules on priority
from the CR on Timing and Priority:
Comprehensive Rules (Ravnica Allegiance, January 25 2019) wrote:
116.3 Which player has priority is determined by the following rules:
- 116.3a The active player receives priority at the beginning of most steps and phases [...]
- 116.3b The active player receives priority after a spell or ability (other than a mana ability) resolves.
- 116.3c If a player has priority when they cast a spell, activate an ability, or take a special action, that player receives priority afterward.
- 116.3d If a player has priority and chooses not to take any actions, that player passes. If any mana is in that player’s mana pool, they announce what mana is there. Then the next player in turn order receives priority.
116.4 If all players pass in succession (that is, if all players pass without taking any actions in between passing), the spell or ability on top of the stack resolves or, if the stack is empty, the phase or step ends.
(Willbender is thinking of 116.3b but it doesn't kick in just yet because there's also 116.3c.)
Priority first goes ABC as you describe. Then C casts a spell; 116.3c says they get priority back. They then pass priority to the next player in turn order (116.3d). Everyone else also passes to keep things simple. Priority at this point goes CDAB. Once B passes, all players have passed in succession (116.4) so the top of the stack resolves. Once a spell resolves the active player, A, gets priority (116.b). From there we proceed in ABCD order as normal.
Or put differently: ABC(cast)CDAB(resolve)ABCD
This also means any player can opt to hold priority.