For widespread distribution it’s a massive net reduction in traffic across internet backbones relative to centralized cervers. If files go from network A > B > C to two users on network C they can send packets to each other without going to networks A or B.
The protocol has quite a bit of overhead, so things can be worse among a small number of clients. It’s also worse than having caching servers on each network.
If the data in the CDN is being downloaded by multiple users in each location then there would be that many local peers with it in a distributed network. If the peers give preference to e.g. lowest ping then they're equally efficient. If the data is unpopular then the CDN is less efficient because it transfers a copy to each node even if nobody ever wants it.
Networks are fractal in nature. Just became you have one or more CDN servers inside Comcast’s network does not mean you’re as close to every machine as two neighbors exchanging files.
From a business standpoint it does not matter much, but from a pure network perspective it’s likely worse.
Many large downloads (at least for some games) driven not through your browser will also by default have a peer to peer option enabled. Battle.net comes to mind for me.
The protocol has quite a bit of overhead, so things can be worse among a small number of clients. It’s also worse than having caching servers on each network.