Most of the time when ubuntu needs to update a package they first check if debian has an updated version, and most of the time it has. And if you compare the package count of the distros debians is higher. It happens, but is pretty rare, that ubuntu adds some package that debian doesn't have for some reason. You've probably come across a few of those.
You shouldn't be running experimental. Things that gets put in experimental are things that are known to be very likely to break stuff. Its mean for debian developers and people who want to help test things and report bugs only. And even they don't install all of experimental, just the packages they want to test.
Chances are you didn't run experimental unless you know a lot about how the package system works, as you have to specifically specify that you want stuff from experimental when you install or update a package, just adding it to the repos doesn't do it. Its pretty unlikely that you got a system working with no problems if you really did install all of experimental.