There are two important things you need before moving to new hosting.
2. WP-content folder.
1. Database – A MySQL database contains your all site information, settings, post contents which is most important.
2. WP-content folder – It contains all your images, plugins and themes.
However, It is always recommended to keep all your files of /public_html folder in .zip before migrating.
How to migrate a WordPress Site
1. Export MySQL database
2. Zip and Download the files from the public_html folder.
It is time to upload them to your new server.
1. Import MySQL database
2. Upload the zip file and export it.
3. Edit wp-config.php file and edit database credentials.
Change your nameserver from of new hosting.
Your site is live on new server without any downtime.
Managed hosting provides free migration on yearly plans. Do check them out. StudioPress sites, Kinsta, Flywheel and Leaseweb are some of the recommended managed WordPress hostings.