The reasons that people believe these items to protect against spirits/evil and fae (respectively) is because salt is believed to be pure, therefore a circle of "purity" couldn't be crossed by evil. And iron is believed to repel fae because (I'm assuming, I haven't actually done research on it) is because iron is what really gave humans an advantage over our world. Technology, weapons, blah blah blah. Fae are spirits of nature, and nature is slow to change most times, iron was a catalyst for change so people assumed that nature (and therefore the fae) didn't like it. I think the easiest way is to explain it is that Iron and Fae have opposing natures.

I think they're good protection. But they wouldn't repel "everything."

My own belief of iron is that it is that of the physical disposition to it. It is VERY grounded in the fact that it is imbeded deep within our earth and even runs through our veins (the red color is due to iron). So it is a very physical metal. It is associated with Mars and therefore strength and willpower. Therefore it is both very physical and very dominating. Therefore it can create a barrier against spiritual energy/beings. It's been seen throughout the world as a protection against all forms spirits and magick.

Read this to see the consistent association with iron around the world. Apparently, the meaning holds ground if it's attributes are worldwide.
http://www.sacred-texts.com/etc/mhs/mhs09.htm

As for salt, it is also what we are made of. Salt is also tied very strongly to earth as a whole. There isn't an element out there that doesn't start with salt. But don't reach for the table salt! I personally use sea salt in my house. It has been gathered naturally from the sea as it has been for hundreds of years (read your labels!). I can't put it better than this site. Read on
http://www.saltcave.us/esoteric_explanation.html

I believe very strongly in the power of iron and salt, not because of books but because of experience. Try it!