You are not specifying at least the TLD involved, and it is relevant as transfer procedures vary a little among TLDs.
So, in gTLDs, a registrar transfer is made without any change in nameservers. Of course the new registrar, as soon as the transfer is finished can technically change the nameservers, but this is not a consequence of a transfer, just as explicit update after it.
As long as no nameservers are changed, the registrar change has no impact to the resolution of your domain (this is per design), so no downtime.
If you also wish to change nameservers you can instruct your registrar to do it just after the transfer (or sometimes with some TLDs together with the transfer). Speed of changes will be related to:
- TTLs in your zone
- refresh value in SOA
- and for each observation, including you, if you did a query just before the switch (which will fill the cache) and which recursive nameserver(s) you use.
Of course the new nameservers must be configured with your domain before putting them in the registry zone, otherwise you will have first queries with invalid replies.
Everything above is irrespective who are the old and new registrars: in a given TLDs, transfer rules are the same for all, and in the DNS resolution rules are the same for everyone.