Both words are very similar in their definition.
Foster. Encourage the development of something
Nurture. Care for and protect (someone or something) while they are growing
The main difference I see, is Foster is a word used for a parent or parents taking a child which is not their own into their home and treating them like their own.