For the purpose of this conversation, let's leave URL rewriting that doesn't result in a browser redirect off the table.
Here are a number of URL Redirect scenarios that are regularly encountered for SEO purposes. Which ones should be handled by IIS UrlRewrite and which should be implemented by the Sitecore developer (using off-the-shelf or custom modules)
- Canonical Hostnames ex:
mysite.com
301 towww.mysite.com
- Replacement Hostnames ex:
myoldhostname.com
301 tomynewhostname.com
- Enforcing HTTPS ex:
http://host.com
301 tohttps://host.com
- Marketing URLs ex:
/myshortpath
301 to/the/actual/path/to/item
- Dead URLs ex:
/myoldpage
301 to/mynewpage
- Relocated Branches ex:
/myoldbranch/*
301 to/mynewbranch/here/*
(other scenarios welcome!)