diff --git a/src/wp-admin/js/customize-nav-menus.js b/src/wp-admin/js/customize-nav-menus.js
index db846baaf2..029c011dc1 100644
--- a/src/wp-admin/js/customize-nav-menus.js
+++ b/src/wp-admin/js/customize-nav-menus.js
@@ -3024,83 +3024,6 @@
 		}
 	} );
 
-	api.Menus.NewMenuControl = api.Control.extend(/** @lends wp.customize.Menus.NewMenuControl.prototype */{
-
-		/**
-		 * wp.customize.Menus.NewMenuControl
-		 *
-		 * Customizer control for creating new menus and handling deletion of existing menus.
-		 * Note that 'new_menu' must match the WP_Customize_New_Menu_Control::$type.
-		 *
-		 * @constructs wp.customize.Menus.NewMenuControl
-		 * @augments   wp.customize.Control
-		 *
-		 * @deprecated 4.9.0 This class is no longer used due to new menu creation UX.
-		 */
-		initialize: function() {
-			if ( 'undefined' !== typeof console && console.warn ) {
-				console.warn( '[DEPRECATED] wp.customize.NewMenuControl will be removed. Please use wp.customize.Menus.createNavMenu() instead.' );
-			}
-			api.Control.prototype.initialize.apply( this, arguments );
-		},
-
-		/**
-		 * Set up the control.
-		 *
-		 * @deprecated 4.9.0
-		 */
-		ready: function() {
-			this._bindHandlers();
-		},
-
-		_bindHandlers: function() {
-			var self = this,
-				name = $( '#customize-control-new_menu_name input' ),
-				submit = $( '#create-new-menu-submit' );
-			name.on( 'keydown', function( event ) {
-				if ( 13 === event.which ) { // Enter.
-					self.submit();
-				}
-			} );
-			submit.on( 'click', function( event ) {
-				self.submit();
-				event.stopPropagation();
-				event.preventDefault();
-			} );
-		},
-
-		/**
-		 * Create the new menu with the name supplied.
-		 *
-		 * @deprecated 4.9.0
-		 */
-		submit: function() {
-
-			var control = this,
-				container = control.container.closest( '.accordion-section-new-menu' ),
-				nameInput = container.find( '.menu-name-field' ).first(),
-				name = nameInput.val(),
-				menuSection;
-
-			if ( ! name ) {
-				nameInput.addClass( 'invalid' );
-				nameInput.focus();
-				return;
-			}
-
-			menuSection = api.Menus.createNavMenu( name );
-
-			// Clear name field.
-			nameInput.val( '' );
-			nameInput.removeClass( 'invalid' );
-
-			wp.a11y.speak( api.Menus.data.l10n.menuAdded );
-
-			// Focus on the new menu section.
-			menuSection.focus();
-		}
-	});
-
 	/**
 	 * Extends wp.customize.controlConstructor with control constructor for
 	 * menu_location, menu_item, nav_menu, and new_menu.
diff --git a/src/wp-includes/class-wp-customize-manager.php b/src/wp-includes/class-wp-customize-manager.php
index db21cb35d9..e317789405 100644
--- a/src/wp-includes/class-wp-customize-manager.php
+++ b/src/wp-includes/class-wp-customize-manager.php
@@ -317,7 +317,6 @@ final class WP_Customize_Manager {
 		require_once( ABSPATH . WPINC . '/customize/class-wp-customize-nav-menu-name-control.php' );
 		require_once( ABSPATH . WPINC . '/customize/class-wp-customize-nav-menu-locations-control.php' );
 		require_once( ABSPATH . WPINC . '/customize/class-wp-customize-nav-menu-auto-add-control.php' );
-		require_once( ABSPATH . WPINC . '/customize/class-wp-customize-new-menu-control.php' ); // @todo Remove in 5.0. See #42364.
 
 		require_once( ABSPATH . WPINC . '/customize/class-wp-customize-nav-menus-panel.php' );
 
@@ -325,7 +324,6 @@ final class WP_Customize_Manager {
 		require_once( ABSPATH . WPINC . '/customize/class-wp-customize-themes-section.php' );
 		require_once( ABSPATH . WPINC . '/customize/class-wp-customize-sidebar-section.php' );
 		require_once( ABSPATH . WPINC . '/customize/class-wp-customize-nav-menu-section.php' );
-		require_once( ABSPATH . WPINC . '/customize/class-wp-customize-new-menu-section.php' ); // @todo Remove in 5.0. See #42364.
 
 		require_once( ABSPATH . WPINC . '/customize/class-wp-customize-custom-css-setting.php' );
 		require_once( ABSPATH . WPINC . '/customize/class-wp-customize-filter-setting.php' );
diff --git a/src/wp-includes/class-wp-customize-section.php b/src/wp-includes/class-wp-customize-section.php
index 6a7b812f2d..8b2c5789bc 100644
--- a/src/wp-includes/class-wp-customize-section.php
+++ b/src/wp-includes/class-wp-customize-section.php
@@ -383,14 +383,3 @@ require_once( ABSPATH . WPINC . '/customize/class-wp-customize-sidebar-section.p
 
 /** WP_Customize_Nav_Menu_Section class */
 require_once( ABSPATH . WPINC . '/customize/class-wp-customize-nav-menu-section.php' );
-
-/**
- * WP_Customize_New_Menu_Section class
- *
- * As this file is deprecated, it will trigger a deprecation notice if instantiated. In a subsequent
- * release, the require_once() here will be removed and _deprecated_file() will be called if file is
- * required at all.
- *
- * @deprecated 4.9.0 This file is no longer used due to new menu creation UX.
- */
-require_once( ABSPATH . WPINC . '/customize/class-wp-customize-new-menu-section.php' );
diff --git a/src/wp-includes/customize/class-wp-customize-new-menu-control.php b/src/wp-includes/customize/class-wp-customize-new-menu-control.php
deleted file mode 100644
index 9925b59bff..0000000000
--- a/src/wp-includes/customize/class-wp-customize-new-menu-control.php
+++ /dev/null
@@ -1,54 +0,0 @@
-<?php
-/**
- * Customize API: WP_Customize_New_Menu_Control class
- *
- * @package WordPress
- * @subpackage Customize
- * @since 4.4.0
- * @deprecated 4.9.0 This file is no longer used as of the menu creation UX introduced in #40104.
- */
-
-/**
- * Customize control class for new menus.
- *
- * @since 4.3.0
- * @deprecated 4.9.0 This class is no longer used as of the menu creation UX introduced in #40104.
- *
- * @see WP_Customize_Control
- */
-class WP_Customize_New_Menu_Control extends WP_Customize_Control {
-
-	/**
-	 * Control type.
-	 *
-	 * @since 4.3.0
-	 * @var string
-	 */
-	public $type = 'new_menu';
-
-	/**
-	 * Constructor.
-	 *
-	 * @since 4.9.0
-	 *
-	 * @param WP_Customize_Manager $manager Manager.
-	 * @param string               $id      ID.
-	 * @param array                $args    Args.
-	 */
-	public function __construct( WP_Customize_Manager $manager, $id, array $args = array() ) {
-		_deprecated_file( basename( __FILE__ ), '4.9.0' ); // @todo Move this outside of class in 5.0, and remove its require_once() from class-wp-customize-control.php. See #42364.
-		parent::__construct( $manager, $id, $args );
-	}
-
-	/**
-	 * Render the control's content.
-	 *
-	 * @since 4.3.0
-	 */
-	public function render_content() {
-		?>
-		<button type="button" class="button button-primary" id="create-new-menu-submit"><?php _e( 'Create Menu' ); ?></button>
-		<span class="spinner"></span>
-		<?php
-	}
-}
diff --git a/src/wp-includes/customize/class-wp-customize-new-menu-section.php b/src/wp-includes/customize/class-wp-customize-new-menu-section.php
deleted file mode 100644
index e0b9b0c5ad..0000000000
--- a/src/wp-includes/customize/class-wp-customize-new-menu-section.php
+++ /dev/null
@@ -1,60 +0,0 @@
-<?php
-/**
- * Customize API: WP_Customize_New_Menu_Section class
- *
- * @package WordPress
- * @subpackage Customize
- * @since 4.4.0
- * @deprecated 4.9.0 This file is no longer used as of the menu creation UX introduced in #40104.
- */
-
-/**
- * Customize Menu Section Class
- *
- * @since 4.3.0
- * @deprecated 4.9.0 This class is no longer used as of the menu creation UX introduced in #40104.
- *
- * @see WP_Customize_Section
- */
-class WP_Customize_New_Menu_Section extends WP_Customize_Section {
-
-	/**
-	 * Control type.
-	 *
-	 * @since 4.3.0
-	 * @var string
-	 */
-	public $type = 'new_menu';
-
-	/**
-	 * Constructor.
-	 *
-	 * Any supplied $args override class property defaults.
-	 *
-	 * @since 4.9.0
-	 *
-	 * @param WP_Customize_Manager $manager Customizer bootstrap instance.
-	 * @param string               $id      An specific ID of the section.
-	 * @param array                $args    Section arguments.
-	 */
-	public function __construct( WP_Customize_Manager $manager, $id, array $args = array() ) {
-		_deprecated_file( basename( __FILE__ ), '4.9.0' ); // @todo Move this outside of class in 5.0, and remove its require_once() from class-wp-customize-section.php. See #42364.
-		parent::__construct( $manager, $id, $args );
-	}
-
-	/**
-	 * Render the section, and the controls that have been added to it.
-	 *
-	 * @since 4.3.0
-	 */
-	protected function render() {
-		?>
-		<li id="accordion-section-<?php echo esc_attr( $this->id ); ?>" class="accordion-section-new-menu">
-			<button type="button" class="button add-new-menu-item add-menu-toggle" aria-expanded="false">
-				<?php echo esc_html( $this->title ); ?>
-			</button>
-			<ul class="new-menu-section-content"></ul>
-		</li>
-		<?php
-	}
-}
