When my children were very small, water was the answer. A glass bowl full of water on the kitchen floor will keep a toddler entertained for a long time. The mess is definetely worth it. A bath can be fun and entertain kids, especially once they are old enough to sit up by themselves. A sprinkler in the backyard, or even a hose with the water turned on low will make any kid happy. Colored water and oil mixed in a jar makes a cheap and surprisingly engrossing toy.
Natural water, such as rivers and lakes and the ocean especially will entertain a kid for as long as you want to stay. No boy can resist throwing rocks, and it never bores them, especially if the rocks make a loud kerthump when they hit the water. The ocean, with its waves and sand and treasures will keep kids happy for a long time.
I'm sure there is a psychological reason that these methods soothe and entertain, but frankly I don't care. Taking a brief time out to prepare or travel to some sort of water has de-stressed and entertained my kids many times. If I had to give a parenting tip in one word..it would be WATER.