I was reading https://gitlab.com/baiyibai/pico-usb-wifi and was wondering how easy this would be on an ESP32-S3.
Well, a lot easier as most of it is supported in the SDK from esp32, in fact, an example already makes most of this possible.
An ESP32-S3 is connected over USB-C to my Mac and...
curl --interface en9 -s -o /dev/null -w 'download: %{speed_download} bytes/s over %{time_total}s\n' 'https://speed.cloudflare.com/__down?bytes=20000000' --max-time 45 1 ↵ user@MacBook-Pro
download: 776966 bytes/s over 25.741136s or about ~5.3 Mbit/s.
I guess you could speed things up a little bit over ethernet by using something like: https://www.waveshare.com/esp32-s3-eth.htm?sku=28972 but the SPI is the limiting factor.
I'll push to github later