You can install C4C Ubuntu on a Microsoft Surface device. But to be able to use all the hardware features (like the touchscreen) you need to switch to a special kernel.
Here are the commands you need to run. A link to more information is at the bottom.
Install the certificate
wget -qO - https://raw.githubusercontent.com/linux-surface/linux-surface/master/pkg/keys/surface.asc \
| gpg --dearmor | sudo dd of=/etc/apt/trusted.gpg.d/linux-surface.gpg
Add the package to the sources list
echo "deb [arch=amd64] https://pkg.surfacelinux.com/debian release main" \
| sudo tee /etc/apt/sources.list.d/linux-surface.list
Run the update
sudo apt update
Install the kernel
sudo apt install linux-image-surface linux-headers-surface libwacom-surface iptsd
Install the secure boot key
sudo apt install linux-surface-secureboot-mok
Make sure you update Grub BEFORE you reboot.
sudo update-grub
reboot
reboot – change back to Secure Boot
https://github.com/linux-surface/linux-surface/wiki/Installation-and-Setup