Not sure if you're really specifically asking about react? This question is maybe just "why render client-side, vs sever-side"? In the end you have to think about where code is stored, transferred and executed.
Client side rendering pushes app code down to the client (so there's more code to download, execute, etc; but it can be faster for subsequent actions), while server-side executes app code and only sends the resulting view down the pipe (which is lighter, but you go back to the server for each view). Neither solution is perfect, hence the various ways people are trying to get the best of both worlds.
I can see server-side rendering of React getting more popular simply to have a templating option that can live in both worlds. Even if you are just doing server-side rendering for one of your systems while the rest are single-page apps, it's nice to be able to use the same template set.
1) If you combine server side caching with server side rendering, basically you are reducing render time on all client pages, just by rendering it once on the server.
2) If you have some business logic on the front end, and you want the user to have access to the rendered view instead of knowing how the logic works.
Marcin Piekarski
Ahh haha. I've got the Youtube video that answers your question!
It's from Google I/O 2016 with Addy Osmani as the presenter.
youtube.com/watch
The gist of the presentation is that he talks about building progressive apps across using three different libraries/frameworks including React.
Bottom line is that there are some pretty awesome performance gains to be had if you build your app correctly with server-side rendering.
There's also the whole SEO thing.