Two-headed snakes are less like the terrifying multi-headed monsters of myth and more like conjoined twins. Within the mother snake, an embryo begins to split to create identical twins, but the process does not finish, leaving part of the snake split and the other parts conjoined.

Unlike the mythical creatures, whose multiple heads make them significantly more dangerous, two-headed snakes rarely survive in the wild. With two heads, the senses are duplicated: When they sense prey, the heads will fight over which one gets to eat it. To make matters worse, if one head catches the scent of food on the other, it will try to eat its other head. (from Howstuffworks)