I've used Roam Research and Notion and I'm biased towards Roam Research.
Why?
Because Roam is easier from a user standpoint. The software works itself into your workflow seamlessly.
I can create a page without having to spend too much time thinking about it. All I need to do is put two square brackets on both sides of the word or phrase for which I want to create a phrase and that's it.
Once I've done that Roam automatically goes through every single word I've typed in the past and offers to connect all the instances of that phrase around which I put the square brackets (via the page that I created for that phrase by putting the two square brackets on each side)
With notion, I find that I have to spend some time thinking about the 'data hierarchy. The way the data is structured is more top-down. Topics don't link between each other as fluidly. They tend to follow a hierarchical structure.
Roam works really well if you're the creative type. If you're the kind of person who likes to have their thoughts flow freely and don't want to be constrained by structure (though it does pay to have structured work sessions) then Roam Research is a great solution.