Routes are resolved in the order you've added them so make sure your custom route is before the default route
routes.MapRoute(
name: "CoursesRegistration",
url: "courses-enrolled-for/",
defaults: new { controller = "Home", action = "CoursesRegistration", url = UrlParameter.Optional }
);
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
If the default route is first it will take "courses-enrolled-for" as the controller name as the url matches the default pattern.