Forget "best", pick a horse and ride it.
Automotive lubricants are excellent for guns, after all a car engines idle around 2,000 rpm and I don't know of any pistols that fire at that rate. Even better is ATF. Unfortunately oils migrate giving you a false sense of lubrication.
I've been using a very very thin coat of marine/white grease to minimize wear on the rails and outside of the barrel. Being white it doesn't make a mess or stain clothing. In theory the downside to using grease is that exploding particles will also stick to it. But in practical use I haven't seen any extra dirt. You can buy an 8oz tube at the local auto parts store for about $2
Experience is a very bad teacher because it first gives you the test and then teaches you the lesson.