With every page load WordPress usually queries the database, picks up all the content, plus the attachments and renders a html page out of it. This process can be very hardware resources consuming which can result into poor page loading speed. That’s especially a problem when you have many plugins installed and when you are on a low cost shared hosting.
To get the best result I recommend a (paid) plugin like WP Rocket or (free) WP Optimize. These plugins do the described process once and the store the result in a plain html file on the server. Instead of querying the database and stuff, the plugin now serves the simple stored result to the visitor. This very resource friendly, like serving a simple HTML website, without having a heavy php software in the neck.
Of course, the plugin might need the optimal settings in order the have best performance. But it is definitely worth to try it.
Faster page loading is not only of more convenience to the visitor, it is also good for your SEO.