For MVC5 below code works for issue same controller name for different areas. You have to specify which area controller have to hit first.
                        
                            
                        
                                    routes.MapRoute(
                        
                                        name: "Default",
                        
                                        url: "{controller}/{action}/{id}",
                        
                                        defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
                        
                                         new[] { "ApplicationName.Areas.AreaName.Controllers" }
                        
                                    ).DataTokens.Add("area", "AreaName");
                        
                        
                        
                
             
            
                
                    
                        For MVC5 below code works for issue same controller name for different areas. You have to specify which area controller have to hit first.
                        
                            
                        
                                    routes.MapRoute(
                        
                                        name: "Default",
                        
                                        url: "{controller}/{action}/{id}",
                        
                                        defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
                        
                                         new[] { "ApplicationName.Areas.AreaName.Controllers" }
                        
                                    ).DataTokens.Add("area", "AreaName");