Laravel 5.6 $this->validate vs Validator::make()

Nope, they do the same exact thing two different ways. I mean that literally, $this->validate() calls the make() method on the validation class. If you look at ValidatesRequests.php, implemented by controller.php which your controller extends. The validate() method calls:

$validator = $this->getValidationFactory()
             ->make($request->all(), $rules, $messages, $customAttributes);

So it ends up using the make() method eventually. There is a difference in how it is handled, since $this->validate calls:

if ($validator->fails()) {
    this->throwValidationException($request, $validator);
}

So using Validator::make() will allow you to handle the exception yourself, instead of $this->validate() auto throwing the validation exception for you. This is useful for doing something before your redirect. You show this in your first example, since you check if the validation fails before deciding how to handle it. In the second example you know that if validation fails it will automatically refuse the request.