Even Charizard's Seismic Toss can't kill the lowliest Rattata, they only faint, and that's nothing that can't be fixed by the Pokemon Center. However, apparently Pokemon do die because there is a Pokemon graveyard in Lavender Town. So it seems that the only way for a Pokemon to die is of old age, but at the same time they breed and expand in numbers. Imagine if you couldn't kill rats and pigeons in real life - they would soon be EVERYWHERE, eating EVERYTHING.