For torrenting at least one of the peers has to be accessible for outside world, either by having white IP, by using NAT with port forwarding, or by using IPv6-to-IPv4 shenanigans. If both peers are behind NAT, they cannot download data from each other.
If you're an active seeder, it makes sense to configure your machine so that it is accessible for all the peers, including ones behind NAT. If you're just a leecher though, it makes little difference.
It will affect leeching torrents that don't have a ton of seeders. No forwarding could render a torrent unusable that would otherwise download just fine if you had an open port.
This isn't completely correct. At least one peer in the entire swarm needs to be accessible. Holepunching (BEP 55) can assist in the rest (albeit it's not ideal).
is this an issue only for magnet/DHT transfers? or does it apply to torrents that have an associated tracker too? i would have expected in the latter case that two NAT’d clients could connect to the tracker, and then the tracker could help them hole-punch a direct peer-to-peer connection.
Try to extrapolate. If nobody has an open port to which a connection can be established, how will the network work?
Trackers don't enable hole-punching, existing peer connections do[0]. And hole-punching is hardly a reliable measure to base your network on, if NAT or connection-tracking is implemented in an address-/port-dependent manner[1] then hole-punching becomes more complicated or fails, especially for TCP.
It does apply to all torrents. As far as I know, by default torrent trackers provide no facilities for hole punching.
However, if you have a tracker in a sense of "community of people dedicated to file sharing", there will be guides on how to do a proper setup even behind carrier-grade NAT. For example, one of the trackers I know suggested using Teredo (IPv6-to-IPv4) tunneling to do the hole punching.