That could be caused by a lot of things. Perhaps services running which should not be running or background processes or updates or an antivirus that is too slow...just to name a few things which aren't hardware related. Open Task Manager... Then open SERVICES.MSC and MSCONFIG to see a list of startup programs. Several things I always disable because they are a huge performance draws are: Windows Search service, Workstation, Server, TCP/IP NetBIOS, Windows Error Reporting. Then in MSCONFIG >> Startup, the list should be empty. If you have a bunch of startup applications, then no wonder it's slow...
There are two programs called XSETUP and Starter, which are tweaking tools that I use to change certain startup settings. I think, these can be downloaded for free. Starter is a tiny program that is worth installing. It shows a comprehensive list of user apps that start everytime Windows starts: https://www.softpedia.com/get/Tweak/System-Tweak/Starter.shtml
XSETUP is a bigger program and allows a lot more than just performance tweaking: https://download.cnet.com/X-Setup-Pro/3000-2094_4-10439607.html