Answer
In Joshua, God commands the destruction of the Canaanites, not because it's the ideal. I mean, the ideal is love your enemies and win them to Christ, but obviously that wasn't an option available in the time of Joshua. If they didn't destroy their enemies, they were going to be infiltrated by pagan customs—for example, the killing of babies who were then often sacrificed and buried in urns and so on. We've found the remains of where Canaanites have done that. Also, anything less than total war would not have eliminated them, which is what we see happening. They didn't have total war, they didn't eliminate them, the Canaanites didn't flee, and so those influences did infiltrate Israel. In Genesis 15, God said that this wouldn't happen, the conquest of Canaan wouldn't happen, until the Amorites had become wicked enough for it to happen. At this point it's kind of like a corporate capital punishment that God is executing on this society.
Answer by Dr. Craig S. Keener
Dr. Craig S. Keener is the F.M. and Ada Thompson Chair of Biblical Studies at Asbury Theological Seminary.