Once you have picked a new theme for your Magento store, download its installation package. For the purpose of this tutorial we would use the Venustheme - Fasony theme. You should upload the theme's zip file to the server. You may do that by using the File Manager tool in your cPanel or over FTP.
The next step is to extract the archive and you will get two directories: app/ and pub/. Copy the app and pub folder in the root directory of your store that you got after extracting the zipped folder of your theme. Make sure to overwrite existing files in these directories only, and not the whole directories themselves.
The next step would be to connect to your account via SSH and run the commands below.
php bin/magento setup:upgrade
The command above would upgrade the Magento application, DB data, and schema. After that execute the command below:
php bin/magento setup:static-content:deploy
It would deploy static view files of the theme.
The next step is to apply the theme via the admin panel. For this purpose you should go to the Content menu > Design section > Configuration.
The next step is to click on the Edit button next to Main Website Store - Default Store View:
This would redirect you to the Default Store View edit screen. Now from the Applied Theme drop down you should choose the newly uploaded theme and click on Save configuration.
That's it! Your new theme is successfully activated now.