Some of the consequences of using render is that the browser’s url
remains whatever what was used to generate the request. redirect,
since it asks the browser to generate a new request, has the side
effect of changing the browser’s url. This allows you to do things
that are more resilient to users using the back button or hitting
reload. The pattern is called “Redirect after Post” and you can
google it to find out more details.
In short, if you’ve done some kind of operation that changes the
state of the system, such as updating or creating a model object, you
should redirect to different page. Thus, hitting reload on the
browser won’t try to update the system again.
Hope it helps,