Saw it twice, liked it both times.
There is a surprising amount of good character work in this. The fact that we've seen so much of these characters already in past films, and we know them and their motivations, they can make big decisions with minimal onscreen explanation and their motivations make a lot of sense.
Even after multiple viewings, you can find or remember little things from previous appearances that add depth to what they did here. The continuity to result in something like this, really, over this much time, is astounding.
And for a 3 hour movie, it kinda just kept moving.
*** SPOILERS ***
As far as I'm concerned, any timeline would ultimately be self-preserving.
You can't go back and kill baby Hitler because, once he's dead, the future changes so that there's no reason for anyone to go back and kill baby Hitler. So he grows up to be Hitler, and then you have to go back and try to kill him.
Rather, any change to a timeline creates a new future, in something like an alternate reality, where you've killed baby Hitler and then a new timeline springs forward from that. If you do want to go back to where you came from, you can only go back to the point from which you came. So you went back, killed baby Hitler, and then came back to the timeline in which nothing has changed for you and Hitler still grew up.
This falls in line with Tilda Swinton's explanation, where you can change the future, but ultimately you can't fundamentally change the past. Otherwise, a new reality branches off and time kinda cracks.
The interesting part comes with the Thanos gang coming forward, which is itself a branch now, of the future. So when they put the Stones back, it essentially clips that branch, leaving now past Gamora in the present, while still leaving past Gamora and the rest of the Thanos gang still back in the past.
*** END SPOILERS ***