I used to run a PBN network building service, and part of that was using registrars and their APIs to try streamline the process. Registered about 5K domains in all, generally I'd say the newer registrars are better particularly for offering timely support. That said, the only time I ever needed to contact support was if their API (or their login area) wasn't able to do what I wanted.
Are all your domains gTLDs?
Domainbox: Bought by GoDaddy, decent API, prices decent, decent coverage of TLDs, support not great.
Enom: decent API, prices decent, decent coverage of TLDs, support not great
Gandi: decent but complicated API, expensive unless you deposit $$$$ or buy lots of domains, decent coverage of TLDs, support not the best (think they are mainly French speaking)
GoDaddy: or Wildwestdomains. Have since updated their API which I've not used much, decent pricing, decent coverage of TLDs, support terrible.
InternetBS: decent API, prices decent, decent coverage of TLDs, support is good.
Namebright: poor API, "at cost" pricing, nameservers/DNS isn't reliable, poor coverage of TLDs, support is poor.
Namecheap: OK API, prices decent, decent coverage of TLDs, support is good. They have a live chat for sorting issues. Some of their services are provided via enom
InternetBS: decent API, prices decent, decent coverage of TLDs, support is good.
NetworkSolutions/SRS: dated API, OK pricing, support poor
OpenSRS: OK API, didn't use them very much
Porkbun: Limited API
I lean towards ones that have a decent API for updating DNS, renewals etc especially if you intend on allowing other people to update things. Also because I wanted to register any number of ccTLDs, I had to look at more registrars as ccTLD coverage can be patchy, or in some cases they charge far more than the wholesale price of the domain.
All in all, I think Namecheap, InternetBS and Namesilo were the most easy to work with while providing a decent service. YMMV of course, just my own observations here.
FWIW generally I think you're going to have to pay to renew for an additional 1 year for all those domains when you transfer to another registrar.