Delegators can withdraw their stake from pools during the majority of a staking epoch. The exception is a defined time-span at the end of each epoch for Validator Selection Process.
There are two scenarios for withdrawals for Delegators.
Scenario 1: Delegators can withdraw from a pool immediately if they withdraw during the same epoch as the one when they staked their ETLs.
Scenario 2: IF the pool they staked in is selected in the next epoch, they can initiate a withdrawal but will not be able claim that withdrawal until 2 epochs later.
For eg. If a delegator stakes their ETLs in a pool in Epoch 15 they will be able to withdraw their stake immediately in the same Epoch and the ETLs will reflect back in their wallet immediately after. But if they do not withdraw their stake and the pool is selected for the next Epoch (which is true for most Epochs currently) then they cannot withdraw immediately in the same Epoch i.e for the purpose of this eg. Epoch 16. They can initiate a withdrawal in Epoch 16 but will not be able to claim or view it immediately in their wallet. The ETLs, though, will still be visible in the pool. In Epoch 17 the user’s withdrawal initiation request will be active but they cannot claim the withdrawal yet. In this Epoch the ETLs will neither be visible in the pool nor in the wallet. In Epoch 18 the user will be able claim his withdrawal and the ETLs will reflect in his wallet immediately.