Marking id
with an asterisk will flag it as a "catch-all" parameter, e.g.
/Content/List/1 --> id = "1"
/Content/List/My/Content --> id = "My/Content"
However, with the following route: "{controller}/{action}/{id}"
the second URL would not match at all.
More information on catch-all parameters on MSDN:
To handle additional segments in this manner you mark the last parameter with an asterisk (*). This is referred to as a catch-all parameter. A route with a catch-all parameter will also match URLs that do not contain any values for the last parameter. The following example shows a route pattern that matches an unknown number of segments. query/{queryname}/{*queryvalues}