Many Christians struggle with the conquest of Canaan in the Old Testament. We don't get there until the book of Joshua, but to the modern mind it can seem like barbaric genocide. The people of Israel were told to conquer the land of Canaan, which was already occupied.
There are lots of things that can be said about this. One of them is that this was a matter of justice. It was not that the people of Israel deserved the land; the reverse was the case. Rather, the occupants of the land deserved their punishment. The Old Testament is sparing when it comes to the detailed practices of the nations who occupied the land before. It hints at practices such as child sacrifice, along with unchecked violence and sexual license. Archaeology from the region would bear this out.
The reading today from Genesis 15 contains an important perspective that must be heard before we reach the passages in Joshua. Verse 13 said that God would delay the conquest of the land for 400 years. Verse 16 gave the reason for this - "the iniquity of the Amorites is not yet complete". If God gave the land to Abram that day, it would have been unjust; the Amorites had not been sufficiently evil to deserve being displaced from their land. However, give it 400 years, it would be just. So God stays his hand. He will not expel the Amorites unless they deserve it. And he will give them time first.
Whenever God announces his intention to punish a people, it is always so that they might turn from the wrong they are doing. If they turn from it, he will not punish them; God is not unjust. But God is also merciful. That is why he gives advanced warning; he does not desire the death of a sinner, but rather that he might turn from his wickedness and live. So he warns and he warns with great patience; he only punishes those who persistently refuse the warnings, and whose wrongdoing has escalated such that they deserve what comes.
We see this in Genesis 15. The conquest of Canaan is not something that God does barbarically, callously, or gleefully. It is something he does reluctantly. He would rather forgive and restore those who live there. If only they would heed the warning.
God is the same with us. Jesus will return as judge. But God does not want to judge anyone; he would far rather restore and forgive us. This is why he sent Jesus to die and rise again. But ultimately, those who refuse the warnings will face God's judgement.
We must see God's justice and his punishments in the context of his overwhelming mercy.