@indeeed @finity I advise not to buy any proprietary hub/gateway/bridge/controller/coordinator appliances as most such commercial appliances only support their own branded devices and a few of their partner’s devices.
Instead I highly recommend buying separate USB radio adapters for each wireless IoT protocol and using Home Assistant’s built-in integration with native support for those, (there are normally a dedicated integration for each standard IoT communication protocol), that way you can make a single installation of the Home Assistant Operating System itself into a central all-in-one hub/gateway/bridge/controller/coordinator system, with just a single computer to rule them all
I suggest starting with ITead’s TI CC2652P based “Sonoff Zigbee 3.0 USB Dongle Plus” (which is now renamed to “ZBDongle-P”) as a dedicated Zigbee Coordinator radio adapter → ITead's "Sonoff Zigbee 3.0 USB Dongle Plus" (model "ZBDongle-P") based on Texas Instruments CC2652P +20dBm radio SoC/MCU
Alternatively, get the Home Assistant SkyConnect USB dongle which support Zigbee and Thread, though personally I really suggest getting separate dedicated USB radio adapters for each protocol (so an option there is to get two Home Assistant SkyConnect USB dongles).
Another related alternative option is to get the Home Assistant Yellow for running Home Assistant on as that like a Raspberry Pi with an embedded Home Assistant SkyConnect radio adapter module on the board:
There are even USB radio adapters + integrations for less common and older wireless IoT protocols if you already own such device (but I’m not recommending such devices for new purchases), like:
In addition, check out the native HomeKit Device HomeKit controller integration as well, (a least if you already own any sch devices), even though connectivity is not done directly via a USB radio adapter :
FYI, several third-party alternative solutions support using USB radio adapters directly as well but better to research those on a protocol-by-protocol basis by looking at specific device compatibility, (like for example Zigbee2MQTT for Zigbee instead of the built-in ZHA integration), however overall I suggest starting with the natively built-in integration as they are more often than not easier to get started with, and you can later always migrate your devices to third-party alternative solutions per protocol if you feel that the built-in integration for that protocol does not meet for needs for the devices that you bought.
Generally, I say that Zigbee has the most amount of different devices on the market but can be finicky and higher maintenance to maintain, while Z-Wave devices are more expensive but more or less just works. And as for Matter there are so few Matter over Thread devices on the market and the standard is not mature (with BETA stage in Home Assistant) so I think it is not worth bothering with until a few years from now.
Note! Zigbee, Z-Wave, and Thread all depend on mesh networking technology which in essence means that they practically rely on having many mains-powered devices on the same network mesh that act as routers/repeaters/extenders, so it is not a good idea to start with only a few battery-operated devices on any such wireless IoT protocol networks. While for Bluetooth Low Energy (BLE) devices you really also need have a few ESPHome Bluetooth Proxy devices for good connection if spread out them out in a large home. For Zigbee read and follow tips here → Zigbee networks: how to guide for avoiding interference and optimize for getting better range + coverage
PS: You can also do similar for some wired IoT protocols, such as the KNX integration, but for some wired IoT protocols it can be better to use an external converter device that is based on ESPHome or an external bridge that convert to a universal IoT communication protocol like MQTT.