Snaps have centralized control. Canonical has to approve a snap package. Flatpak is like most of Linux. Anyone can make a Flatpak. Also, in my experience, Snaps had a lot of issues early on that were not present in Flatpaks. Now, Flatpak dominates and Snaps kinda feel like a irrelevant runner in a race long after the officials closed competition packed it up and went home.