check diskspace in /boot
if required remove old kernels to free space:
run "rpm -q kernel-core" then "dnf remove <name of the kernel>"
dnf upgrade –refresh
dnf install dnf-plugin-system-upgrade
dnf system-upgrade download --releasever=<ver>
Incase of broken dependancy try with
dnf system-upgrade download --releasever=<ver> –allowerasing
replace <var> with the version you want to upgrade to. Remember <ver> should not be more than 2 versions from current version.
I have tested above from 35 to 37 then 37 to 39 then 39 to 40.