All of the Kryptonians die except for Zod, because this is the kind of movie where the climax has to feature the hero and the villain punching each other. (ASIDE: Weirdly, this is the kind of rote climax that Christopher Nolan previously deconstructed in The Dark Knight. I quote the Joker: “You didn’t think I’d risk losing the battle for Gotham’s soul in a fistfight with you?” In Man of Steel, it’s all one big fistfight. END OF ASIDE) Superman and Zod punch and punch and punch each other, sometimes while flying through buildings and sometimes while not flying through buildings. Ultimately, Superman gets Zod in a choke hold, which is kind of like Kryptonite for Kryptonians who are appearing in a movie that’s too cool to have Kryptonite. Zod uses his heat vision to attack some locals. Superman tells him not to. Zod refuses.
So Superman kills Zod.
This is a shocking moment. It’s shocking for all kinds of reasons. Superheroes don’t kill people, but Superman definitely doesn’t kill people. It’s a defining aspect of the character. He isn’t just good, he’s too good. It’s an insanely powerful moment. When it happens, you think to yourself: “Geez, what a radical redefinition of the character. Classically, Superman has never taken a life, even the life of his worst, most homicidal enemy. How will this change this character going forward?”
Answer: It doesn’t change him at all. Lois Lane runs over to comfort him.