That native sdk and the vscode plugin are very professional. There is a bit of a learning curve to get into it, but once you do, it's very functional and the developers are super supportive. They have fixed bugs for me in days.
Boards like the ESP32-C6, almost 5 years old, are not supported in PlatformIO with Arduino libraries, because they refuse to update the Arduino core in some kind of stand-off with Espressif. This has been going on for years. There is a fork [1] that offers support but none of it makes back upstream.
As a hobbyist I've given up on PIO and moved to a barebones arduino-cli setup instead. Much lighter and less painful.
Still requires using rust compiled against their llm fork. 'espup' makes it easy if you're okay with using it.
Other than that it works pretty well. This is if you run ESP-IDF, with bare-metal rust it's either best thing ever or meh. Rust community seems to use stm32 and picos more.