Is there a way to iterate through all bundles in a block explorer, or is there a way to get access to a list of all bundles?
When you are only interested in confirmed bundles, you can start with the latest confirmed milestone and follow trunk/branch transaction pointers (you will need some tree traversal strategy and remember transactions you have already seen), which will eventually end at the genesis hash of the latest snapshot. That way you can see all transactions and build bundles from them (based on same bundle hash). On permanodes (e.g. thetangle.org) you can go on from there, but on other nodes not (history will end at the latest snapshot). There are databases with all transactions available for download as well, which include transactions before the last snapshot.