I think the main benefit is the ability to testing and ease of use. Angular approaches form validation declaratively whereas more complex JQuery validation is done via JavaScript. Angular validation falls in line with the way HTML5 elements should be validated and it believes all validation constraints should be declared in the markup rather than in code (which I agree).
The biggest problem (in my opinion) with validation in angular is that while it is good pratice to decalare your validation rules on the element that displays the data I don't believe it is good practice to have to also define your validation messages in markup at the same time.
<form name="signupFrm" novalidate="novalidate">
<div classs="form-row">
<label>Username:</label>
<input name="username"
ng-model="model.username"
ng-minlength="3"
ng-maxlength="10"
required/>
<div class="errors"
ng-show="signupFrm.username.$dirty && signupFrm.username.$invalid">
<small class="error" ng-show="signupFrm.username.$error.required">Please input a username</small>
<small class="error" ng-show="signupFrm.username.$error.minlength">Please enter a min length of 3</small>
<small class="error" ng-show="signupFrm.username.$error.maxlength">Please enter a max length of 10</small>
</div>
</div>
On large application this quickly becomes unmanageable as well as forcing logic into markup which is never good as it cannot as easily be tested.
However, I would still favour this over JQuery and I have created a angular module angular-auto-validate which seeks to get rid of the need to defined your messages in the markup. It takes the view that while the declarative nature of the angular form validation is great the way you actually show error messages to the user (with expressions) leads to more unmaintainable; code hence this module moves to reduce that complexity in your markup by applying dynamic validation message.
You can find the module here and the angular blog post behind the idea here