The issue with Dark Fortresses is the way its set up, COULD be fixed by Toady, ect, by separating the 9 tiles within the fortress area itself... since when your directly in the dark fortress, that area, + 8 adjacent areas are loaded, which 100% of the time have open caverns with trolls, ect:
OOO
OTO
OOO
T being the loaded chunk with the fortress tower, and the O being the adjacent tiles where a potential open caverns can be at with hundreds of creatures will spawn (unless its a tavern cavern).
With this in mind, if they were to shift the layout to where these open caverns don't spawn within the radius of other caverns and the main fortress, the lag/crash issue wouldn't be so present.
But the closer you get to the fortress, more chunks are loaded, with the caverns and fortress, combining the amount of NPC's that may suddenly and awkwardly start pathing out at some point, causing even more lag, eventually, a crash.
One work around to this is using DFHack's "exterminate" creature command, which, if you slowly load each chunk one after another and making sure you don't unload it, while exterminating each of the creatures (I usually keep goblin and demon alive), you will be able to deal with the area. BUT do keep in mind, using Exterminate, then unloading a chunk, then re loading it causes more to spawn (seems to be a glitch with this command). So, exterminate, stay in the middle, kill the demon, and leave is what I usually do lol.