I don't really get the reason for this thread. It is so generally worded, that it can apply to any and all Registrars and TLD's in the world. Which is why you see these varying, sometimes clashing, viewpoints. ICANN have set the rules for most Registrars and TLD's under which they should be operating. But the problem is both Registrars and TLD's only take these as guidelines, and/or interpret them as they see fit. Leading up to the point their are multiple answers to these questions. For example
Lets take just .COM domains registered at GoDaddy. This is subject to GoDaddy Domain Name Transfer Agreement,
https://godaddy.com/agreements/showdoc.aspxpageid=TRANSFER_SA&isc=dnabb510
There seems to be a lot up to the discretion of the registrar in this agreement. And this was posted in GoDaddy Community Forum
https://ph.godaddy.com/help/what-happens-after-domain-names-expire-6700
Which says (between the lines), that you can transfer out a domain up to Day 30 after expiry. (you don't get charged the redemption fee on day 19 because you are not renewing the domain at GoDaddy)
So the short answer to this example is you can transfer out .com domains at GoDaddy up to 30 days after expiry.
That shows the exact answer to the question of a transferring a .COM domain away from GoDaddy. But that is just GoDaddy and several TLD's like .com, .net, .org, and others, most but not all. However most ccTLD's have zero grace period, and cannot be transferred after expiry. Again, most but not all. The list of exceptions are too many to go into detail. ie: some Registrars require you to renew expired domains before allowing transfers. The list of exceptions goes on and on.
Which is why it is impossible to answer such an open ended question with any kind of accuracy. So please take any reply received in the thread with a pinch of salt,
@Ronny Rubinstein. It might not apply to any case you might have in mind. And there is no generic answer to this open ended question.