IPv4's reserved addresses: a real, measurable cost
A /24 IPv4 subnet has 256 total addresses, but only 254 are usable — 192.168.1.0 is reserved as the network address and 192.168.1.255 as the broadcast address, both permanently off-limits for host assignment. That's a small but real overhead, roughly 0.8% of the subnet's total address space lost to reservation.
IPv6's approach: every address counts
An IPv6 /64 subnet's network address, 2001:0db8:0000:0042:0000:0000:0000:0000, and its highest address, 2001:0db8:0000:0042:ffff:ffff:ffff:ffff, are both themselves usable host addresses — nothing is carved out and reserved the way IPv4's network and broadcast addresses are.
Why the two protocols diverged
IPv4's broadcast address exists to send one packet that every host on the subnet receives. IPv6 replaced that entirely with multicast — sending to a specific multicast group address that only interested hosts join — which needs no reserved "send to everyone" address carved out of the regular address range at all.
Why this barely matters in practice for IPv6
For IPv4, losing 2 addresses out of 256 in a /24 subnet is a meaningful design consideration. For IPv6, where even a single /64 subnet already holds over 18 quintillion addresses, the entire concept of "losing" a couple of addresses to reservation is essentially irrelevant — there's no practical scarcity to protect against in the first place.