Here's how to make warming, satisfying soup with a few basic ingredients and plenty of options for substitutions. Customize your soup further by stirring in something especially flavorful just before serving, or topping with croutons or shredded cheese.
Soak beans overnight in 8 cups water overnight; drain well. (Soaking not necessary for lentils.) Cook 1 chopped onion in oil or broth in a large, deep pot over medium-high heat until deep golden brown.
Deglaze with wine, cooking until almost absorbed. Add drained beans, broth, and bay leaves. Bring to a boil, cover and simmer until almost tender, about 2 hours. Skim off and discard any foam that shows up on the surface.
Stir in tomatoes, herbs and rice. Simmer until rice and beans are tender, 20 to 30 minutes longer.
Stir in frozen vegetables. Cook until hot throughout, about 10 minutes more. Season with salt and pepper and 2 tablespoons something flavorful (see options below).
Beans: pinto, black, cannellini, kidney, garbanzo, lentils (no soaking required for lentils!)
Herbs: thyme, parsley, oregano, curry powder, cumin seeds
Rice: brown, red, black, wild
Frozen vegetables: chopped spinach, broccoli florets, collard greens, kale
Flavorful additions: olive tapenade, lemon juice, sherry vinegar, pesto, sour cream