Heat the oil in a medium saucepan over, medium-high heat. Add the onion, garlic, ancho chile and salt. Cook for 2 minutes, stirring frequently. Add the uncooked rice and cook, stirring constantly for another minute.
Add the broth, salsa and water to the pan. Bring to a boil, reduce to a simmer and cover. Cook for 20 minutes or until rice is tender. Remove the pan from the heat. Let the pan sit undisturbed for 5 minutes.
Remove lid, add cilantro, lime juice and zest then fluff rice with a fork.Serve immediately.