According to the U.S. Department of Health and Human Services' Child Welfare Information Gateway, adopting a stepchild is actually the most common form of adoption.
From my understanding, the primary purpose of adopting a stepchild is to sever all legal ties to the absent biological parent. According to this factsheet, after the stepparent adoption occurs, the noncustodial parent no longer has any rights or responsibilities for the child, including child support.
These laws vary (within the United States) from state to state, and at least some may require consent of the noncustodial parent:
Stepparent adoption is governed by State law. Most States make the adoption process a little easier for stepparents, but requirements for home studies, criminal background checks, and procedures for obtaining consent of the noncustodial parent vary widely by State.
I've only ever seen this done when the relationship between the child and the noncustodial parent is bad. Really bad. Such as cases of outright abuse, or a complete disinterest in participating in the child's life in any capacity.
I would say that yes, this should only be done if the child wants it (assuming they are old enough). If the child doesn't want to sever ties with the biological parent, expect a tremendous amount of resentment and anger to interfere with any attempts by the stepparent to form a close relationship. It could also easily spill over and harm the relationship between the child and the custodial biological parent.
This can be difficult, as it takes a lot for a young child to want to disassociate with a biological parent, even in cases of abusive relationships. Once a child is in their teens, a separation of this nature may (or may not) be a much easier transition.
I think that it should be a given that the child's relationship with the noncustodial biological parent should be either nonexistent, or irreparably negative, before stepparent adoption is even considered.