I just feel that compromises like this should not be present on the mainstream motherboards.
I can understand limits like that for something entry level, (e.g., your basic $60 ATX motherboard running an entry level CPU), but if you are at a core i5 or i7, or the AMD equivalent, tradeoffs like this should not be required.
For example, a user cannot have a setup of an NVMe SSD, 6 hard drives, a PCI-E X1 sound card, PCI-E X16 video card, and then upgrade to a 10GbE adapter (Asus XG-C100C) because the X4 slot is disabled when the m.2 slot is in use.
Then there is the issue of the shared bandwidth. If you have a PCI-E soundcard installed, along with a Samsung 970 pro running through the chipset, then doing as little as generating a tone while using ASIO on the soundcard, will cause the 970 pro to drop from around 3500MB/s reads, to around 3000MB/s reads.
They pretty much force you to go to a workstation class board and CPU to not cripple basic configurations.
As for the X570, I can't seem to fine any info in the PCI express lanes when it comes to bandwidth sharing and what ports get disabled.