No, you cannot purchase a domain name forever. Every year, a domain name is registered. However, you may pre-pay for up to ten years. Ensure that you will hold a domain name for ten years.
As long as you pay the annual renewal fee, you can keep the domain permanently, and no one can take it away from you.