Alter existing route to a different route for a specific content type node using RouteSubscriber
You need to change the _controller for the route, check this code:

&lt;?php

namespace Drupal\drush_help\Routing;

use Drupal\Core\Routing\RouteSubscriberBase;
use Symfony\Component\Routing\RouteCollection;

/**
 * Listens to the dynamic route events.
 */
class RouteSubscriber extends RouteSubscriberBase {

  /**
   * {@inheritdoc}
   */
  protected function alterRoutes(RouteCollection $collection) {
    // Change the controller for the help page.
    if ($route = $collection-&gt;get('help.page')) {
      $route-&gt;setDefault('_controller', '\Drupal\drush_help\Controller\HelpController::helpPage');
    }
  }

}


In this case the route is altered to replace the Drupal help page for a custom controller.

If you want to see this in action go to check the code of the Drush Help module.

Disclosure: I'm the maintainer of the module Drush Help.