Trains will consider longer detours the longer they are stuck. Sometimes the end result is they take a strictly worse loop because the alternative path they come up with ends up also being blocked, so they revert to the original path at some point. They do not remember the past or predict the future, all they want is to reserve path that will lead to the target.
I can change the parameters to make them less eager to take longer detours, but I don't really want to place any hard limits as this will result in them failing to find actually viable alternative paths in many cases. It could perhaps be user configurable.
You can, however, remedy this in two ways. #1 is to fix your congestion issues so your trains do not get stuck and start thinking about nonsensical detours. #2 is to change your track layouts so that those nonsensical detours are just not available to them in the areas where congestion might occur.
I'm not sure if a locomotive use case tutorial belongs inside the game, but I'll look into it. In general, you want trains that are as cheap as possible to run, while having just enough traction and top speed to avoid causing congestion. To make a good choice you need to consider what the weight of the train will be, the speed of other trains on the line, and how often it has to climb a sloped tile.
When engines are combined, they only contribute to traction below their engine top speed, and the speed of the whole train is limited by the lowest max. safe speed. The typical use of combining engines is including a slower engine to help in climbing long slopes. A couple other uses would be including a weak/fast engine to increase the top speed on long flats, or combining electric and combustion engines for traversing partially electrified railways.
You are seeing high resolution icons because of your UI scale setting. If you want to see upscaled low resolution icons instead, you should delete the icons in the "hires" folder.
