There are many things that can cause this and not all are Trainz related. Here are some not related to Trainz specifically.
1) Your disk is failing.
A dying hard disk, and SSD too, will exhibit this symptom. Loading small things is okay, but lots of data and the speed and overall performance dies off.
I recommend using HD Sentinel
www.hdsentinel.com For what you need, the free version will work fine.
2) Your disk is full.
Windows and Trainz, and other programs too, need space to operate. If the drive is really full, neither can use the extra space for temporary files which is needed when RAM is used up.
3) If it's a regular platter-type hard disk, when was the last time you defragmented your drive?
TRS2019 really benefits from this especially after installing a lot of content, upgrading, and database repairs. I recommend doing a defrag at least a couple of times a week even if Windows says the drive doesn't need it. Trainz, all versions, opens up a lot of files and does a lot of disk reading and writing, and this really helps too if you run a database repair because it speeds up the disk access.
For TRS2019-related stuff,
1) Check the logs.
Developer ---> Show logs.
If this is doing a lot of activity and you haven't started yet, wait for it to complete. TRS2019 pre-caches the content before loading it. This process can take a long time if you have a lot of content. To speed up the process, you can force a pre-cache by using Trainzutil.
2) At the Launcher, click on Developer and then Trainzutil
In the space type in -prebuild
Let it run. Again if you have a lot of content this can take time.
Again if your drive is highly fragmented, this process can take much longer than it should.