So, am I missing something or is there no difference between this and the X370?
I believe you're correct. The B350 chipset only has 2x USB 3.0 but the board has 6x so it may be a third party chipset while the X370 is native?
The B350 has 2x USB 3.1 gen 2 (10gpbs), 6x USB 3.1 (5gpbs), 6x USB 2.0
The x370 has 6x USB 3.1 gen 2 (10gpbs), 10x USB 3.1 (5gpbs), 6x USB 2.0
http://www.amd.com/en-us/products/chipsets/am4
The difference lies in the sata connections for the mitx form factor
A Ryzen CPU is a SOC and the SATA is already connected directly to it, meaning there are 2x SATA 3 and 1x NVME pcie 3 x4
However the CPU cant provide all of that, meaning if a nvme drive and sata is occupied the nvme will drop to pcie 3 x2
So a B350 offers 2 more sata, however if all 4 are used your nvme will be dropped to x2
A X370 offers 4 more sata, however if all 6 are used your nvme will be dropped to x2
Basically pay attention to the mobo manual to check what are the sata ports that you want to use, so that your nvme isnt affected