To add to all great comments here I have one that I’ve used for ages and not seen mentioned here: lftp
It supports many protocols for ftp like over ssh and allows for shaky connections with resume and back in the days when this was more common I used to just run it in the background to download huge files that took days to download and it would gracefully just reconnect/resume/retry until done.
I think it was about 1995. I was going to the university and was looking for something Unix compatible I could use at my home computer to perform assignments instead of needing to go into school computer lab. Remote work basically. Think I was using LessTif instead of Motif for some coding task.
Ahh. Those were the days. Used modem to connect to school and connect remotely to the network using Linux. :)