The unmarried children of a U.S. citizen, under the age of 21, are eligible for U.S. green cards (lawful permanent residence). They are what’s called "immediate relatives," meaning that they face no annual limits on the number of visas (green cards) given out in their category. They can receive a green card just as soon as they can get through the application process.
By contrast, the married children of a U.S. citizen, or the children over 21, are considered "preference relatives." Annual limits apply to the availability of visas in their categories, resulting in waits of a few years, within the middle of the application process, until a visa becomes available.
If you were a U.S. citizen when your child was born, your child may have already become a citizen, automatically.
Stepparents and stepchildren qualify as immediate relatives if the marriage creating the parent/child relationship took place before the child’s 18th birthday. So, for example, if you are a U.S. citizen who married a foreign-born person, and are applying for a green card for your spouse, you could, so long as you got married before the children turned 18, apply for green cards for them at the same time. (It doesn’t matter if they turn 18 before the application process is done.)
If you are the U.S. citizen parent, then it will be up to you to take the first step in the process. This is to prepare and file Form I-130, issued by U.S. Citizenship and Immigration Services (USCIS).
It’s important to realize that every child of a U.S. citizen needs a separate I-130 filled out for him or her. You can’t combine children on one form, and you can’t (if you’re also petitioning for a spouse), list them as children and except them to be included automatically as "derivatives." Through a quirk in the law, petitioners with green cards who apply for their spouse and children can do it all with one I-130, but you, as a U.S. citizen petitioner, cannot.
You’ll need to pay a nonrefundable fee along with Form I-130.
If your child already lives in the United States, then he or she may be eligible to adjust status – that is, apply for and receive a green card without having to leave and be interviewed at an overseas U.S. consulate. This is probably only possible if your child is either living here legally with a visa or some other status, or entered with a visa (even if that status has expired). For more information on the forms and documents required for adjusting status, see What You Need to File I-485 for Adjustment of Status.
If your child is eligible to adjust status, then you don’t have to wait for I-130 approval to apply for adjustment. Simply include the Form I-130 (with fee) in your adjustment of status packet when you send it to USCIS. If you're not sure about eligibility, have a lawyer help at this stage.
If your child already lives in the United States, then he or she will need to complete the process, including attending an interview, at a U.S. embassy or consulate in his or her home country.
For more information on the forms and documents required for consular processing, see What Happens During Consular Processing?
At the consulate, he or she should be given an immigrant visa, allowing entry into the United States. It’s important to understand that your child is not a permanent resident yet – that happens only when the child enters the United States using the visa. For that reason, it’s very important that the child not get married before entering the U.S., as described in the article, Why Children Must Remain Unmarried Until Green Card Approval.