This long, fascinating article in the Washington Post illustrates the problem Israel faces because it is more moral than its enemy. By failing to attack a group of terrorist murderers meeting at a single place with sufficient force in order to save the lives of Arab civilians, Israel ensured that hundreds of Israeli civilians would be murdered in the future by these evil men.
What is the correct moral choice? A group of people are meeting. Each one, if allowed to stay alive, will murder several hundred civilians each. However, there is no way to capture them and the the only way to kill them would kill a hundred civilians. Do you drop the bomb? Do you kill a hundred civilians now (including children) to save a thousand civilians later (including children)?
And would doing so persuade terrorists to no longer use children as “human shields”?
See In Israel, a Divisive Struggle Over Targeted Killing.