So with motherboards, the main thing to keep in mind is what controller your system is running, specifically:
- Networking Interface Controller (Ethernet)
- Audio Interface Controller
- USB Controllers
- RTC vs AWAC
With audio and ethernet, most boards are supported and you can find a more extensive list from AppleALC for audio and going through Mieze's ethernet kexts for networking(IntelMausiEthernet.kext, AtherosE2200Ethernet.kext and RealtekRTL8111.kext). Please see the Networking section of this guide for more details.
And there's patches for unsupported USB with XHCI-unsupported.kext(which can be found within Rehabman's USBInjectAll's project. See below for AMD Chipset note.
But where the real issues come in are when we look towards server boards and non-Z370 300 series motherboards. Server boards don't like to play nicely with macOS so users often opt for running a hypervisor in between to avoid issues with but it still is possible to run macOS natively if you're willing to put the effort in. Non-Z370 300 series motherboards have the issues where nvram, audio and onboard video out don't work correctly and require more work to function with onboard video sometimes not fixable even with manual connector patches through WhateverGreen. NVRAM can be solved with either EmuVariableUEFI-64.efi or with OpenCore + FwRuntimeServices. With RTC vs AWAC, macOS ouright won't boot with systems that have their clock using AWAC and most BIOS GUIs don't even show the option to change it. So we need to either force RTC with an SSDT, create a fake systems clock or patch it out(both solutions are not ideal).
Another issue these platforms face is that they rely on OsxAptioFix2Drv-free2000 which is now concidered destructive to your system meaning build guides based of it are now invalid. More info can be found here. These issues can mostly be aliviated by calculating your slide value: Understanding and fixing "Couldn't allocate runtime area" errors
While there are workarounds for this platform, anytime you're not running native hardware means there's one more point of failure. Yes, others may have gotten their systems to run but keep in mind that the more complicated an EFI gets, the more places you'll need to examine when troubleshooting and the harder it is for users of the community to help you.
Note for HEDT: Support for these platforms including server boards are much better on OpenCore so if you're having issues it's recommended to try them.
Chipsets to avoid
- C612 (generally seen in server boards)
Brands to avoid
- MSI(Weird Memory Layout and just really poor ACPI programming)
- AsRock(non-native USB controller)
AMD Chipset boards
While you've avoided my warning on CPUs, I suppose I can at least explain the issues with these boards:
- Chipset differences mean nothing, an X570 will work just as bad as a B450
- Brands also don't matter
- USB is a hit or miss on AMD, you can try to port map them but note that all of them are not native