I'm honestly not sure now if I went into ME3 expecting Shepard to die, but I don't have a problem with Shepard dying, and in fact I'd say it should be at least a possibility in any set of potential endings. The first time I finished the game, I wasn't so much angry or sad about the endings or about Shepard dying so much as I just had a general WTF reaction - it was like if Star Trek: The Next Generation had ended with Q telling Picard he had to become the StarChild from 2001: A Space Odyssey and that one of the ways for accomplishing this would accidentally kill Data and every other android or AI in existence.
After reading other reactions to it and thinking about it myself, my main objection was, and still is, not so much about Shepard dying as about the limited and arbitrary nature of the choices. Presumably all of the galaxy's most brilliant surviving engineers, if they have a lick of sense in them, are helping the war effort somehow. EDI was able to hack the Collector Ship's internal controls in ME2. The geth, if they're alive, are extremely advanced AIs. And yet it's not possible to reprogram the Crucible to do anything other than the three options that the Catalyst spells out? Shepard doesn't even radio his/her allies to suggest *trying* such a thing? And meanwhile, the most important and influential soldier in existence, the one who, depending on your choices, may have talked the geth and quarians out of fighting a war, can't even muster a decent argument with the Catalyst over its (IMO) clearly flawed and simplistic assumptions?
More than anything, I felt like I did at the end of Deus Ex: Human Revolution, where not only are Jensen's choices limited, but the game doesn't even acknowledge what seems like a fairly obvious alternative.
Obviously, games with choices can't always account for every possible hypothetical, but when it comes to the end of the entire story, they shouldn't just leave obvious "But why don't they just...?" questions hanging out there.