What from factor were you looking at getting (EATX, ATX, mATX)? And what add-in cards are you planning to use? The real difference in chipsets is the number of pci-e lanes available. X370 has more available lanes. So you can, for example, run two/three GPUS, 2 or three envme m.2 SDDs, RAID, and a video capture card, at full pci-e speeds. B350, maybe you'll be able to run 1 gpu, 1 envme m.2 SDD, and one add-in video card.
So if you are going to use a multi-gpu setup and you need a couple of fast SSDs, then get X370. As this will give you good headroom to upgrade/add to your system.
Stable overclocking on both chipsets pretty much depends on the quality of the mobo. In my opinion ASUS do the best mobo's for both chipsets, then followed by Asrock. I would also check the motherboard's QVL (tested) memory list, as this shows which ram sticks offer the most stability. Asrock have a good QVL ram list. Go for the highest speed you can get on the QVL for your mobo, as ryzen likes fast ram.
Check the link out for chipset differences https://www.gamersnexus.net/guides/2763-amd-chipset-comparison-x370-b350-a320