I've tried every chain lube specific product I could find over the years. Far more than his small sample, plus gear oils, ATF's, motor oil, etc., etc.
To date, I still like the Pro Honda HP chain lube (in the white and red can) the best. When applied to a hot chain and allowed to dry, it generally stays on the outer rollers for a couple hundred miles, and on the sprockets until it's cleaned off with kerosene. The chains and sprockets last the longest for me using this product.
As for holding grit, I use the same lube on our dirtbike chains. We're at the sand dunes this weekend, and taking a break from riding for lunch. I lubed the chains last night, and let them dry. Just looking at them now, there is very little sand stuck to the chains. Gear oil holds more sand on the chain.