>> SEO: if your content exists at two (or more!) distinct URL endpoints, it is a SEO no-no. […] You need redirects.
> Or you could just only serve it from one of the two URLs and let the other 404.
That's not a good idea. The URL you are choosing to remove may have built up some link equity, which you will lose if you 404 it. Instead of 404ing it, 301 redirect to the surviving URL. This allows search engines to consolidate equity from both URLs into one.
This + better user experience if external sites are linking into both page versions. You dont want one group getting 404 when you could quickly get them to the correct page.
As a rule if a page has traffic it should be redirected to the next best when being removed, even if its a old promo page that's not relevant etc.
> Or you could just only serve it from one of the two URLs and let the other 404.
That's not a good idea. The URL you are choosing to remove may have built up some link equity, which you will lose if you 404 it. Instead of 404ing it, 301 redirect to the surviving URL. This allows search engines to consolidate equity from both URLs into one.