Domain registrations last for as long as the domain registrant, account holder, decides to pay for them. Currently most domain registrars allow customers to register a domain domain for up to 10 years at a time, however most domain customers only register their domains for 1-3 years per renewal. As long as a registrant continues to renew the domain with the registrar, a domain registration for an infinite amount of time.
Each domain registrar is allowed to set their own rules and terms for registering and renewing domain names, you should contact your domain registrar to see which term lengths are available for your domain registrations and renewals.
Many domain registrars also offer discounts when registering a domain for multiple years.