Поскольку мы в разделе ASP.NET, то буду говорить про него. Не знаю каким образом мы можем синхронизировать валидацию на фронтенде и бекенде, мне даже кажется это технически нереализуемо, но могу ошибаться. Если мы говорим о валидации в целом, то мы в первую очередь должны обеспечивать 100% валидацию на стороне сервера, потому что не хотим, чтобы была нарушена целостность данных и т.д. Тут надо руководствоваться принципом fail fast - как можно быстрее проверяем валидность данных из запроса. Чтобы привести валидацию к какому-то организованному виду можно использовать, например, библиотеку FluentValidation.