curl / Docs / Tool / Comparison Table

Compare curl with other download tools

This comparison only involves entirely free and open source software.

Feature curl wget wget2 fetch lftp aria2 HTTrack HTTPie xh
.netrc + + + + + +   + +
Bandwidth Limiting + + +   + + +    
Commercial support +                
DNS-over-HTTPS +                
FTP 3rd Party Transfer         +        
FTP Active Mode + + + + + +      
FTP Connection Re-use +     + + +      
FTP Kerberos +                
FTP Ranges +                
FTP Resume + + + + + +      
FTP Upload +       +        
FTPS +       +        
GOPHER +       +        
GOPHERS +                
H2/H3 Happy Eyeballs +                
Happy Eyeballs +                
HAPROXY protocol +                
HSTS + + +            
HTTP alt-svc +                
HTTP AWS Sigv4 Auth +                
HTTP brotli +   +           +
HTTP Cookies + + +   + + + + +
HTTP Digest Auth + + + +       + +
HTTP etags +                
HTTP gzip +   +     + + + +
HTTP Multipart POST +             + +
HTTP Negotiate Auth +             +  
HTTP NTLM Auth + + +         +  
HTTP Persistent Conns + + +   + +      
HTTP POST + + +   +     + +
HTTP POST Chunked +                
HTTP Proxy + + + + + + + + +
HTTP PUT +       +       +
HTTP Ranges +                
HTTP Redirects + + + +   +   + +
HTTP Resume + + + + + +   + +
HTTP time conditions + + +            
HTTP zstd +   +            
HTTP/1.1 + + + + + + + + +
HTTP/2 ALPN +   +           +
HTTP/2 h2c upgrade +   +            
HTTP/2 to proxy +                
HTTP/3 +                
HTTPS + + + + + + + + +
HTTPS Proxy +               +
IDN hostnames + + +         +  
IMAP +                
In development + + +     +   + +
IPv6 + + + + + yes* + + +
IPFS gateway +                
LDAP +                
library / API +   +            
Metalink   + +     +      
MQTT +                
Multilingual Messages   + +   + +      
Multiple URLs + + + + + +      
Parallel transfers +       + + +    
POP3 +                
Recursive downloads   + +   +   +    
Retry failed downloads + + + + + + +    
RTMP +                
RTSP +                
Same file multi connect     +   + +      
SCP +                
SFTP +       + +      
SMB +                
SMTP +                
SOCKS4 +       +        
SOCKS5 +       +     +  
SOCKS5 proxy resolve +                
TELNET +                
TFTP +                
Tiny Executable       +          
TLS: BearSSL +                
TLS: Client certs + + +           +
TLS: GnuTLS + + +   + +   yes*  
TLS: mbedTLS +                
TLS: OpenSSL + +   + + + + + +
TLS: rustls +               +
TLS: Schannel +             yes*  
TLS: Secure Transport +             yes*  
TLS: Session ID cache +   +            
TLS: WolfSSL +   +            
Unix domain socket +                
URL globbing/sequences + + +     +      
Username/Password + + + + + + + + +
Windows Port + + +     + + yes* +
WebSocket +                
License MIT GPL GPL BSD GPL GPL GPL BSD MIT
Version 8.7.1 1.21 1.99.2 4.7 3.5.0 1.8.3 3.43 3.2.2 0.18.0

The mentioned tools: wget, wget2, lftp, aria2, httrack, HTTPie, xh

'Fetch' is an integral part of the FreeBSD operating system.

* aria2 supports IPv6 only in HTTP(S) download

* HTTPie is written in Python + Requests and thus carry their portability and features

"In development" - releases or new things done to the project within the last couple of years.

Please file a bug report if this table is incorrect, or tell us other features we should compare!