I've said this before but I think Israel are in an impossible situation. How do you fight Hamas when they are so embedded in, and to whatever extend supported by a civilian population, and one in a densely populated area? You can't, without killing civilians, probably many civilians.
But how can you not, if by not doing so it is your civilians that will then be killed?
I don't pretend to have an answer, beyond putting the onus on Iran to stop financially supporting Hamas, and Qatar to stop hosting their leaders.