THAC0 (/ˈθækoʊ/, thack-oh) is an abbreviation for To Hit Armor Class Zero (0), and is used as the basis for determining if an attack roll succeeds in AD&D 2nd edition. To calculate if a hit succeeds, the player rolls a 20-sided die, and adds or subtracts any bonuses or penalties. The player then subtracts that number from their character's THAC0 value to find the strongest armor class (AC) the attack hits. In AD&D, armor classes range from 10 at the worst to -10 at the best, meaning a lower THAC0 value will yield better hits.
A player can also subtract the opponent's AC (if known) from their character's THAC0 value to find the roll they will need to hit their opponent.
Example: If the player's character has a THAC0 of 10, and they roll a 12 on the die (with no bonuses), the best armor class they can hit is -2 (10 - 12 = -2). If the same character wishes to hit an enemy with an AC of 4, they need to roll a 6 (10 - 4 = 6). The lower the THAC0, the lower the roll needed to hit any given AC value.
Fighter classes have the best THAC0 progression and spell users have the worst.
A rough guide to convert THAC0 and 2nd edition AC to 3rd edition values is to subtract the number from 20. 20 minus THAC0 yields a rough calculation for a Base Attack Bonus (BAB); 20 minus the 2nd edition AC yields an equivalent to 3rd edition AC.