I was not able to get my client side validation method to fire after setting up the validation according to various sources. After lots of struggle I found that changing the order of when the scripts were loaded resolved the issue. I have provided an answer to show a complete setup for 'RequiredIf' custom attribute for asp.net core 3.0 MVC. Hopefully it will save other people precious time.