A few things.
There is a reason why cartridge based systems these days have load times.
First off, load times have generally four factors. Medium transfer speed, receiving system memory speed, system processing power, and game code efficiency. Since we can rule out cartridge speed and system memory as being bottle necks, whats left is processing and game code. These factors work hand in hand.
Loading the files to begin a segment of a game isn't all that's involved. In very simple terms, you need to "setup" the assets that you have just loaded "where you need them". This takes time.
In the past, the assets were very very small, compared to the rate at which they could be loaded into the system. And while the systems of that time were slower hardware, what was being processed was much less in comparison. In addition, older consoles had "more structure" in how you did things. Today you are basically just doing things how you want, but back in the older generations you had very specific guidelines and routines that you needed to utilize. This mainly comes into play with graphics and music.
As an example, today your graphic engine is completely based on whatever you make. You can do whatever crazy stuff you want for the most part. Back in the 80's and 90's though things were much different. For example, the NES has a very rigid structure for it's graphics.
I am aware I am oversimplifying and generalizing in this following example, but the added detail would serve to confuse those who are not familiar with the technical workings of the NES. With that in mind... You have little squares of images stored in memory, all of which the same size, and you can place them in a grid like a scrabble board. You cannot go outside the grid. You cannot have more than 4 colors for any one square. You can only have 4 palettes of colors reused between the squares. In addition you can place a few dozen squares anywhere you want, also with the same color limitations.
All these rules are the structure that the NES follows, and for the most part cannot be changed or overwritten by the programming. The important part to take away from this is that, there is a structure. The structure is set, and does not have to be "setup" as it is always there.
Conversely on a modern console, this structure doesn't exist so rigidly. The programmer has to build this structure at loading time, and that takes extra time to setup. How fast this gets setup depend son how elaborate the structure has to be, and also how good of a job the programmer did to make ti happen as fast as possible. Some programs just aren't that good. Some structures are just too elaborate and complex that no amount of good programming will take off that extra 5 seconds to load.
Game consoles and game programming are simply getting too complex for load times to be as quick as the old days in most cases. However, the up side is this allows the developers greater control and flexibility, especially in graphics. When you combine this slower loading with a disk based storage system, which is a slow medium of transferring data, the effect is amplified. The distinction between the two was not really noticed, because the disk based storage system and the increased flexibility happened right around the same time. In current day a cartridge based system will always have the edge, but it doesn't mean you will be free from load times.