Singletons and Don't destroy on load

Hi,
I was hoping someone could explain some things about singletons and don’t destroy.
I have seen tutorials for sound managers that have
If(instance =null) {instance=this}
else {destroygameobject(this)}

Why would there be more than one sound manager in a game? If you create it during a “preload scene” and then added don’t destroy. Won’t you always have one instance anyway? I feel like I’m missing something.
Also, if I loaded all my scenes at the start (smoother transitions in game between scenes), would there be no use of a singleton?

Thank you, any clarification at all would be wonderful

Sorry for the wrong topic, I won’t let my put any other topic in for some reason

The idea is that you indeed only have one instance, but if you accidently put down another script in the scene or any other of your transition scenes then you have 2 instances and that would mess up a lot, thus destroying it to safe yourself some trouble. That way it is always guaranteed to have only one instance.

if (Instance != null && Instance != this)
    Destroy(this.gameObject);
else
    Instance = this;

But if you make sure you only have one instance, then you don’t need to worry about that code.
“Also, if I loaded all my scenes at the start (smoother transitions in game between scenes), would there be no use of a singleton?”

Depends on how you want to access your manager script.