This would be the common use case, yes.
However, model.eval() changes the behavior of some modules during training and validation, while torch.no_grad() disables the gradient calculation, and some use cases treat these two options independently.
E.g. you might want to leave dropout layers enabled during validation to and create multiple (noisy) predictions for the same input samples etc.