Ballistiol it's fantastic if it actually stays on the part that you're trying to keep clean. It's a thin oil, so it wipes off easily and leaves room for oxidation. A lot of people give it a bad reputation for this, but it's really just easy to clean, that's it. I like using it for internal parts that aren't exposed to anything outside of the gun.