What are the ways of dynamic url rewriting in IIS, asp.net web page. I know one of them is to add rules into config dynamically, but that has some disadvant
You can also use custom rewrite providers with the IIS Url Rewrite Module. There is a good article on the subject here.
The DbProvider might be the most useful to you if you want dynamic rewrite rules.
URL Rewrite Module 2.0
ASP.NET Routing
UrlRewritingNet.UrlRewrite
I would recommend using ASP.Net Routing.