Like UTM Firewall, Sophos XG firewall work as a VM on Hyper-v. There is an option to download a ready to run package. But there is a lack of documentation. The package, now, contain 2 VHD files, PRIMARY-DISK.vhd and AUXILIARY-DISK.vhd. Upload this 2 files in a folder on your hyper-v server. And create a generation VM, with the 2 disk attached on the first IDE controller. Select the amount of ram (1 Gb is the minimum) and the number processor you need. Add at least 2 network cards, remember that the first one will be the LAN and will be used for initial setup.

New-VM –Name "XGDemo" –MemoryStartupBytes 1GB -Generation 1 -Path 'X:\SophosXG' 
Set-VMProcessor  -Count 2 -VMName "XGDemo"
Add-VMHardDiskDrive -VMName "XGDemo"  -Path "X:\SophosXG\PRIMARY-DISK.vhd" -ControllerType IDE -ControllerNumber 0 -ControllerLocation 0
Add-VMHardDiskDrive -VMName "XGDemo"  -Path "X:\SophosXG\AUXILIARY-DISK.vhd" -ControllerType IDE -ControllerNumber 0 -ControllerLocation 1
Add-VMNetworkAdapter -VMName "XGDemo"  -Name "LAN_NIC1" -SwitchName SetupLan
Add-VMNetworkAdapter -VMName "XGDemo"  -Name "LAN_NIC2" -SwitchName LAN

Remember that the first NIC, LAN_NIC1, is the management port. The default IP for the management port is It’s a problem even if you have the as internal network. You need to create an access to to setup the firewall. The solution creates a vswitch, internal or external, to setup the firewall from the parent partition, from another VM or an external network, if you need to access outside the hypervisor but be sure to have a dedicated nic on the parent host and a dedicated network.

You can start the VM and once you get this message

You can open your browser to setup your firewall