Ryzen is particularly finicky about memory. It is true that it has gotten by better with the newer chipsets, B450 and X470, than with early Ryzen chipset motherboards, but it is still picky especially when it comes to trying to get it to run at speeds of 3000mhz or higher. Not only that, but it is furthermore quite selective about which ICs (Memory chips) are used on the memory modules with a clear preference for modules using Samsung B-die ICs which is generally what makes selecting memory for Ryzen more expensive.
Ryzen is also a lot more responsive with fast memory, in the 3000-3400mhz range, due to the design of it's infinity fabric memory architecture.
Those are the particulars of that. It has however gotten better through improvements from BIOS/UEFI firmware updates and better compatibility at the hardware level from the newer chipsets. I wouldn't even remotely consider going with an older chipset board like B350 or X370 at this late stage of the game.
While there is a good chance that any decent quality memory will run, I'd recommend sticking to modules that have been user verified as having been found to work on Ryzen and those can be found here:
https://www.overclock.net/forum/18051-memory/1627555-ryzen-memory-ic-collection-thread.html