We tend to think of plants getting their nutrients from the soil, using their roots to gather all of the necessary elements from the ground. Not all plants do this, though. Some eat flesh!
Carnivorous plants are plants that use nutrients derived from insects or animals in place of, or in addition to, typical soil-based nutrients. They are mostly found growing in areas where the soil nutrients are very low, and so nutrients must be taken from a source other than the soil.