That is a very helpful explanation. I do have a lot of repos configured but most are
necessary. Some are now added by gnome-software.
_copr_phracek-PyCharm.repo fedora-updates.repo
rpmfusion-nonfree-nvidia-driver.repo
dropbox.repo fedora-updates-testing-modular.repo rpmfusion-nonfree.repo
fedora-cisco-openh264.repo fedora-updates-testing.repo
rpmfusion-nonfree-steam.repo
fedora-modular.repo google-chrome.repo
rpmfusion-nonfree-updates.repo
fedora.repo rpmfusion-free.repo
rpmfusion-nonfree-updates-testing.repo
fedora-spotify.repo rpmfusion-free-updates.repo
fedora-updates-modular.repo rpmfusion-free-updates-testing.repo
I added these to /etc/dnf/dnf.conf based on googling;
max_parallel_downloads=10
ip_resolve=4
keepcache=true
deltarpm=true