Major spoilers for Avengers: Endgame ahead.
With a three-hour movie like Avengers: Endgame, in which so many lives are at stake, it makes sense that emotions were running high. Death seemed inevitable, of course, and there were significant characters that lost their lives in Endgame. But one death in particular could have possibly been avoided if not for this major Endgame plot hole, and it's definitely going to keep fans up at night.
In their Endgame effort to effectively use time travel to gather all the Infinity Stones before Thanos does and bring everyone who was dusted in the snap back, all of the remaining Avengers on Earth set out to collect the stones from the past. Two teams, Rhodey (War Machine) and Nebula, and Clint (Hawkeye) and Natasha (Black Widow), traveled back to 2014 to collect the Power Stone on Morag (as seen in Guardians of the Galaxy Vol. 1) and the Soul Stone on Vormir (as seen in Infinity War), respectively. Now, as Nebula was involved in the making of this plan, it made sense for the audience to assume that Nebula had filled Barton and Nat in on how Thanos got the Soul Stone in the first place, and what it cost — Gamora's life. However, that's not what happened at all.
In Endgame, Barton and Natasha show up on Vormir full of confidence that they'll get the Soul Stone and leave without a scratch. And then they learn the truth: only one of them can leave Vormir with the stone, the other will have to sacrifice themselves to save the world (or half of it). After fighting between themselves, Natasha ended up "winning" and giving her life in exchange for the stone. It was a very brave and heroic move, but there's a chance it could have been avoided if they had been warned of the necessary sacrifice beforehand.
It would have been — and should have been — an easy thing for Nebula to mention while planning this "time heist," but she didn't. Now, some might argue that Nebula didn't see Thanos sacrifice Gamora for the Soul Stone, she only knew that he had killed her. However, looking back on Infinity War, it's clear that she understood what Thanos really did.
"Gamora... He took her to Vormir, he came back with the Soul Stone, she didn't," she told Star-Lord ominously in Infinity War. Nebula knew that something went down in order for Thanos to get the stone. She might not have known the logistics, but she certainly knew enough to warn the team before they headed off to Vormir. It's also interesting to note that Tony, one assumes, also heard Nebula's deduction while fighting Thanos in Infinity War — he was pulling the gauntlet off the villain's hand with Peter Parker right next to her — so he could have overheard. It's possible he was too distracted to really comprehend the information, but he did spend almost a month in space with Nebula. Did he never think to ask?
Would a warning from Nebula have changed things? Maybe, or maybe not. The tragic fact is, the Avengers needed the Soul Stone, and the only way to get it from the source would be with a sacrifice. Plus, it has to be someone you love that you're sacrificing, so it's also not like they could have just brought anyone for that purpose (not that they would because they're heroes), but maybe they could have mulled it over a little more. And if it did come down to Natasha being the one to sacrifice herself, then at least with a warning, the rest of the Avengers could have had time to say goodbye.
Black Widow's sacrifice is heroic and poetic — she does it to save the family she made, the one she loves so much. But, that's what makes this Endgame plot hole so frustrating.
It can be seen as a poetic and heroic thing to sacrifice yourself, but it's very devastating considering she had a whole talk about family. She did it for her chosen family, for those she loved, and it can't ever be undone. But this Endgame plot hole taints it. She could have said goodbye, shown her love for her family one last time, and fans will never know why she didn't get the chance.