Is it possible to change Master Page dynamically at runtime

Yes we can change a master page by set the MasterPageFile property to point to the .master page during the PreInit page event.