I had exactly the same problem with one machine - one that has been updated since Jan 2013 (Fedora 18) - all my other PCs are much more recent, so I’m guessing this is relevant to the issue
The problem was the Grub environment file (grubenv) had an invalid ‘saved_entry’, so presumably grub couldn’t cope with trying to identify that entry from the menu and simply crashed out and rebooted.
To solve, boot a live USB/CD and get up a terminal and log in as root (su -).
Check that you know what the boot partition is by using ‘fdisk -l’. It’s usually /dev/sda1 but it can vary.
Mount the boot partition by:
mount /dev/sda1 /mnt
and then you can check the grubenv by:
grub2-editenv /mnt/grub2/grubenv list
The ‘saved_entry’ parameter should be a filename that you can see in:
ls -l /mnt/loader/entries
Assuming it’s not (as in my case), note the highest kernel version and change the grubenv by:
grub2-editenv /mnt/grub2/grubenv set saved_entry=de90851cc18b488aa6aad83c40ada5b2-5.0.11-300.fc30.x86_64
of course replacing the filename with your own. (Note the initial long string is machine specific.)
Then you should be able to boot the machine.
To solve the underlying cause, you need to amend/create the file /etc/sysconfig/kernel (which tells the system to update grubenv on installation of a new kernel). This file was non-existent on my problem PC, and I had a Fedora 27 kernel referenced in the grubenv. I presume that before the new BLS config Grub, the grubenv was ignored, since the PC was fine until Fedora 30 upgrade.
You can see what the contents of /etc/sysconfig/kernel should be in the docs:
Just search for the filename - but be wary that these docs aren’t updated to take account of BLS.