I think RDR2 was the best game this generation (ps4/xbone), but i have a hard time picking between it and Witcher 3, especially if i factor in the expansions (well, mostly Hearts of Stone).
RDR2 has a better story and it's more cohesive, but i really like the atmosphere of W3 and some of its side-quests were really fun to go through.
Plus the choose your path mechanic of RPG quests (some of them anyway) just satisfies something primal, i believe.
Gameplay wise, i think RDR2 has more interesting ideas and systems, but they're both deeply flawed in the combat department.
It's hard to say because i played with W3 modded to hell in that regard (loot balancing and all that) so i dunno how it would've been if played vanilla.
In the end though, i think RDR2 is all around a better product and, especially, more one-of-a-kind (a 200 million dollars western-themed game), whereas Witcher 3, while fantastic, is more within the realm of what we have seen already, in similar forms.