Is there a difference between Network.Destroy() and RPCing Destroy method?

I was wondering because, when I used Network.destroy() on 2 clients, it worked perfectly(server and one client) then with multiple clients(4, 1 server 3 joined players), it messes up, on one or two screens you can see ghost instantiated objects, no physics or anything but they are there.

I tried fixing it, i found that there is some issue with Network.Destroy not being in some order, so I RPC’ed “Destroy” method across all clients, and when I tested it, no ghost instantiations at all. SO Is there an actual difference between the two, or did I jsut lucky some how?