The opening on Krypton was great. It does a good job of showing how the roles of the Kryptonians is very singular, but they're not one-dimensional, and I was glad that the specifics of General Zod's role and Jor-El's role not being explicitly stated until later.
Despite being nervous about it at first, the intercuts of him growing up worked REALLY, REALLY well. Jonathan Kent's change is done in a way that I've seen some people HATE, but because they rather missed the point of what was being done with him. He believes COMPLETELY in Clark, but he also believes that if people aren't ready for him, they'll never give him the chance to be the amazing person that he can be. Even when he & Clark are arguing in the truck and Clark's being a bit of a teenager, in the end, he shows that
he fully trusts his father by NOT saving him, because his dad fully (and rightly) believes that he is saving Clark's life by allowing him to not be seen as a superhuman, because humanity isn't ready. This is reinforced with what Lois realizes when she meets him for the second time in Smallville and listens to his story.
Superman GETS this reaction when General Zod shows up, and he gets to prove it within combat to the military who originally surrendered him over, and also treated him as an enemy target. He earns the trust of those who would and did retaliate against him, and he learns that he can be the example that BOTH of his fathers believed he could be. The biggest point about Superman is made here, because he doesn't encourage us to believe in him - HE believes in US,
and that's what makes him great.
This next bit is from
This Review that brings up that Superman doesn't attempt to avoid collateral damage in the two big battles. Let me address why that makes sense:
First is the fight in Smallville. The military pretty much pins down the fights location, and this is LITERALLY the first time that Kal-El has
ever fought anyone at this level of his OWN power (not to mention just in general), and EVERYONE starts by treating him like a target. This isn't a Superman who's been using his powers at their utmost to stop disasters - him at the oil rig is the peak of the sort of thing that he's done before, and all that PALES in comparison to what happens here. On top of that, he's attacking them out of rage for threatening his mom, and he's never been ABLE to unleash that type of power against someone before, which would explain planting them through a gas station. He tells everyone in the area that it's not safe and to get indoors. The next thing that happens is that as soon as Faora-Ul & her ENORMOUS Kryptonian sidekick show up, the battle is
absolutely no longer on his terms. If he attempts to move the battle into an unpopulated area (as the review suggested), the Kryptonians will just move it back, or they'll split up and just start murdering people. Faora-Ul attacking the Marines is a pretty clear indication that she'll just wipe out anyone in her way.
Next we've got the two-part battle in Metropolis. Kal-El & Lois' plan is that the military is going to send all of the Kryptonians back into the Phantom Zone, while Superman takes out the World Generator. The Kryptonian ship is just slaved to the World Builder, so Kal-El is attacking the source of what's actually damaging the earth, right off the coast of India. Yes, there're LOTS of casualties in Metropolis because of the Gravity Attack effect, but I'd argue that the spread of an atmospheric disturbance that will continue to be generated
EVEN AFTER the Kryptonians are sent into the Phantom Zone next to a country with a population density like India is a much bigger issue here. Also, let's be clear, the military BARELY managed to hit their target, and the World Generator FOUGHT BACK. The plan here is for Superman to stop the most deadly threat, and have the military employ a solution where they didn't have to kill the Kryptonians - just banish them. You're going to sustain casualties either way, but I think that this plan actually makes the most sense.
Now we'll move on to the fight against Zod - this is ANOTHER fight that is absolutely not on his terms. Zod basically managed to get up to Kal'El's level of power in what... a couple hours? He's hell bent on murdering EVERYONE. If he stops attacking Zod for a second here to save people, that's a moment where Zod is going to go the other direction and murder WAY more people. The fact that Zod is focused on Superman, and not just toppling every building he can see is the big point here. A majority of the time, it's Kal'El getting tossed through buildings, and not the other way around. He's not CAUSING collateral damage, he's simply not in a position to be able to stop it.
A big point is that the climax in the film ISN'T and it's SUPPOSED to not feel like a victory. Clark doesn't want to kill ANYONE, let alone his own people, which is why he attempted to throw them all into the Phantom Zone. Destroying the ship that was already on Earth doesn't really mean anything, because it can't create anything without the Codex, which IS HIM. All of Krypton literally and figuratively lives on within him.
The very end of the film, we get to see Superman as the Superman everyone knows. He's being snarky but lovingly heroic to the military with his, "no spying on me" bit and seeing him showing up as Clark Kent was great, because THIS is showing that he really does still believe in humanity, and believes that he can help them be great. Everything that he does, he places trust in humanity. He's not the saviour who expects everyone to rely on him in this film, he's the one who can wants to makes humanity great.
Lastly, let me just say - Lois Lane, Martha Kent, & Faora-Ul were
fucking AWESOME, and it's great having some badass female characters on all ends of the spectrum.