Well we plan on raising our babies bilingual so they'll learn Arabic and English from birth. The best time to learn a new language is from birth-early elementary as their minds are like little sponges which just soak up everything.
Well that depends what you want to teach as far as foreign language wise.
Now with our future children they'll learn Arabic from talking to their father and English from me and being out in the world. I also plan on using Ad-Duha Institute for Arabic and Islamic Studies lessons plus some other Arabic workbooks from Islamic Book Store where I get Islamic DVDs and books for my benefit and future childrens' benefit.
Muffy has some DVDS (English, Spanish, I think Italian, a few others I don't remember at the moment). Rosetta Stone (expensive) has a host of different languages spanning 3 levels.
The best way for you to learn a new language is to hear it everyday and be exposed to people who speak that language as their native tongue. For me I watch Arabic cartoons and listen to my husband when he talks to his family in Arabic. Then if I hear a word I don't know I ask him what it means or if we're out shopping he'll tell me what some things are in Arabic and I commit it to memory.
Say you want your children to learn Spanish. Do you have any Spanish speaking friends or Spanish speaking family members? Do you have any Spanish books in the library you could check out. Is there a community in your city or area that has a lot of Spanish speaking people? Perhaps you could make different foods from different Spanish speaking countries or if you know someone from a Spanish speaking country perhaps ask them to show you a traditional way to make something? Is there anyway you could get a tutor or a babysitter for a couple hours and have him/her speak in the language you want to teach your children?
For me I don't remember much of Spanish even though I took 1 1/2 years of it in high school. I picked up a bit of Spanish from watching Dora and Diego.