What IPv6 have address-space-wise, is 2^64 subnets, out of which 2^61 is actually allocated to be routable over public internet.
Then comes granularity of /48 allocations (= 2^16 subnets) to end users and /32 allocations (= 2^32 subnets) to ISPs. That gives just 2^45 end users and 2^29 ISPs at best. In practice, if handing a user a /48 would become a common practice, all medium and large IPSs would start accumulating multiple /32s, then routing concerns would come back, and largest ISPs will start aggregating to /28s or /24s or whatnot.
That is still a whole lot of addresses (and IPv4 still looks laughably small in comparison), but actual, practical numbers are way, way lower then "340 undecillion" marketing figure being plastered all over the place.