In a 4- to 5-quart pan, combine carrots, onion, and water. Cook over high heat, stirring often, until liquid has evaporated and vegetables begin to brown and stick to pan (about 10 minutes).
Add tomatoes and their liquid to pan; break tomatoes up with a spoon. Stir in all beans and their liquid (if using home-cooked beans, add 1 cup low-sodium chicken broth mixed with 1 teaspoon cornstarch). Add chili powder; stir to scrape browned bits free. Bring to a boil; then reduce heat and simmer, uncovered, until flavors are blended (about 15 minutes). If chili is too thick, add a little water; if it's too thin, continue to simmer until it's as thick as you like.
Ladle chili into bowls. Add yogurt, salt, and red pepper flakes to taste.