This question has been answered several times as part of more general questions about seasoning.
See the (closely) related links in the related questions list.
This one in particular: What's the best way to season a cast iron skillet?
Specifically about oil-
you want to use an oil that has a high iodine value: http://www.journeytoforever.org/biodiesel_yield.html#highiodine Of those you listed canola (rapeseed) would be highest.
If you can find soybean oil it would be even better.
These oils polymerize more easily.
To create an even coating with good adhesion, multiple thin coats work well.
I have read of people doing as many as 6 coats
but, in my opinion, you should do at least 2 or 3.
cooking.stackexchange.com/users/2001/Sobachatina
The best is flax oil.
The next best is soybean oil.
The third best is liquid canola (not hydrogenated Crisco).
This is because of where those oils are listed on iodine index; which is a measure of how much an oil will polymerize.
Polymerization is when oil turns into plastic and is the actual chemical process responsible for "seasoning".
Here's a whole site dedicated to this topic with more detail: Chemistry of Cast Iron Seasoning:
A Science-Based How-To
cooking.stackexchange.com/users/14822/Joe
I will disagree with the top answers here and say that it is best to look for something saturated, with low iodine value.
I personally stand by lard, but there are other options.
The advice that suggests high iodine oils is based on their easy polymerisation.
So, if you don't execute your process perfectly, you end up with a polymer layer for a high iodine oil, and a greasy pan for a low iodine oil.
Sounds like high iodine wins,
right?
Well, this superficial advantage is actually their biggest disadvantage.
The polymer you get from a badly executed seasoning with a high iodine oil is a major PITA.
Enough of the abundant "sticky sites" on the molecules of the oil have made a connection to form the polymer - but even more are still free, available to grab on to something else, for example the food you are frying.
The coating is soft, gummy, and sticky, and I have had it come off in patches during use.
It can be hardened under the right circumstances, but that's not easier than getting a low iodine oil to harden (and I suspect it might be even trickier).
Save yourself the grief and go for the low iodine oils.
I would say that whatever makes a nice firm bar of soap - lard, palm oil, coconut - is a good choice here.
If you can get it right, it's a great layer - and if you can't, you at least know that you're back to the drawing board, instead of a silent failure that will cost you nerves down the road.
cooking.stackexchange.com/users/4638/rumtscho
From personal experience, I have seasoned my Lodge cast iron skillet recently following the process described here and I achieved good results with basic Crisco, which is more or less Canola oil.
So far so good:
no sticking and great tasting results.
I went through the process five times, but I think that may have been a little overboard.
Perhaps someone with more practical experience can comment, but I didn't see a huge difference between the fourth and fifth seasoning.
After the third round the pan was already a rich, black color with the sheen of a well seasoned cast iron utensil.
However, if you are starting from a freshly scoured pan--you mentioned that you are cleaning up an old rusty pan--it may make sense to go through the process a couple of extra times to make sure all the nooks and crannies are properly filled.
Mine came from the factory seasoned, but it wasn't done very well--I had food sticking after about a month.
Since I re-seasoned myself
it's been going strong for a couple of months now.
cooking.stackexchange.com/users/5280/Jduv
Having grown up in the southern US, the traditional seasoning of cast iron in those parts was to simply cook bacon in it a few times.
Nothing near as fancy and involved as what you see recommended these days.
That has been my usual lazy approach.
On a recommendation from a cast-iron retailer, I have started using the new fancy approach (rub with oil, bake to polymerize) using flax-seed oil.
I have to say that the flax-seed oil gives a very strong coating.
Nearly impossible to remove from the sheet pan I used to catch the drips during the oven 'cure'.
If I have a complex-shaped cast-iron item (grill, back-side of skillet) I use the flax-seed approach.
If I want to simply build up the coating on the inside of a skillet, I cook the bacon.
Always a good excuse to cook up a batch of bacon.
cooking.stackexchange.com/users/37131/JS.
I just cleaned up a rusty cast-iron skillet and I would like to season it. The thing is that I don't have lard handy and I'm wondering whether any of my other oils and fats would do.   I have: canola, olive, sesame and almond oil.   Also, I've heard that appying the oil and reheating multiple times improves the seasoning. Is it true? How many times does it make sense to repeat the process?
What oil is best for seasoning a cast-iron skillet
cooking.stackexchange.com
<oil><cast-iron><seasoning-pans>
cooking.stackexchange.com/questions/13555
cooking.stackexchange.com/users/5471/ddimitrov
Canola, soybean and especially flax are some of the best, and they should be applied in multiple thin coats for an even coating with good adhesion. Use an oil with a high iodine value. Use soybean,flax or canola oil.
Use an oil that has a high iodine value. You should use soybean, flax, or canola oil. You should create multiple thin coats.