My recommendation would be to use Proxmox. I’m not overly versed in XCP-ng, so I can’t comment there but @Jay and Tom Lawerence talk about it a good bit.
@Jay has a series on installing Proxmox already, and I’ve heard there is an updated version coming at some point - Setting up your own virtualization server with Proxmox Virtual Environment
If you’re going to virtualize something like TrueNAS, you’ll want to pass through your HBA (if you have one, e.g. amd_iommu=on in the grub config). If you don’t have an HBA, I’d recommend you get one rather than using the onboard SATA ports. ZFS likes to work at the device level (directly at the disk), and that’s where HBA’s shine.
Even if you’re not going to virtualize a NAS, you would still benefit from an HBA, especially with a system of that caliber. I have an LSI 8x HBA on my 2700X host, and it works really well with Proxmox, no complaints at all.