Everything in ReplicatedStorage gets loaded by the client, you don’t need to preload anything that’s in the Workspace, or ReplicatedStorage.
Preload is meant for literally pre-loading content.
Before the client has access to the content, you should preload its assets. Once loaded, then transfer to the client.
I also experience the same issue a lot, even after preloading with ContentProvider. So I usually fix this by placing ImageLabels that are visible underneath a frame (with the same background color as the main background) for each image that I don’t want to experience the issue with. So once I use these images at any time, they instantly appear.
For sounds and animations though, there’s no workaround for them. We need to wait until roblox patches this bug.