Governor limits in Salesforce enforce runtime limits on Apex code to ensure fair sharing of system resources among multiple tenants. The key governor limits include limits on the number of SOQL queries, records retrieved, and number of scripts executed. Governor limits are calculated based on the entry point for the Apex code, such as Apex triggers, web services, or anonymous blocks. Limits are shared across an organization and apply to all code executed within a synchronous transaction, while asynchronous code like future methods has separate limits. Developers must optimize code to avoid hitting governor limits, for example by bulkifying code, minimizing SOQL queries, and using future calls appropriately.