There's no more reliable method that I've ever found to do a system upgrade.
That said, it can fail if you have third party repositories that have not been updated for the new distribution and are missing packages or have new conflicts. But these problems, if they occur, are shown in the download/transaction test phases. If you get as far as rebooting into the system upgrade, it will complete, barring a power failure or something else catastrophic.
Before you upgrade Fedora, though, you should check the Fedora wiki for an article titled "Common F** bugs", where ** is the Fedora release you are upgrading to. For instance, if you are upgrading from 29 to 30, read Common F30 bugs first, to see if any of the problems apply to you, and then either delay your upgrade or apply any workarounds that might be specified.