A couple of days ago I watched a video on YouTube where, during a demo, the creator tried to download a file via curl. It didn’t work. When he tried wget, it worked (That was only a very tiny part of the video).
So why does wget work and curl not? My guess: broken IPv6 on the host. Happy-Eyeballs (HE) is defined in RFC8350 and is used to workaround broken IPv6 connections. It only works for HTTP(S). Basically if a target is dual-stacked a client supporting HE makes two connections to the target and then uses the better (as in working or faster) connection. So if IPv6 on your host is broken you won’t notice.