Heat olive oil in a large Dutch oven or pot over medium heat. Add diced yellow onion and green bell pepper. Sauté for 5-7 minutes until softened.
Stir in minced garlic, chili powder, ground cumin, dried oregano, cayenne pepper, salt, and black pepper. Cook for another 1 minute, stirring constantly, until fragrant.
Add the rinsed and drained cannellini beans and Great Northern beans, vegetable broth, and diced green chiles (with their liquid) to the pot. Stir well to combine.
Bring the chili to a simmer, then reduce heat to low, cover, and let it cook for 15-20 minutes, allowing the flavors to meld. Stir occasionally to prevent sticking.
For a creamier texture, you can either remove about 1 cup of the chili and mash it with a fork before returning it to the pot, or use an immersion blender to partially blend a portion of the chili directly in the pot. Alternatively, if you prefer a thicker, chunkier chili, you can skip this step.
Remove the pot from heat. Add the cubed cream cheese to the chili and stir continuously until it has completely melted and is smoothly incorporated, making the chili creamy.
Stir in the fresh lime juice. Taste the chili and adjust seasoning (salt, pepper, or more cayenne) as needed.
Ladle the hot chili into bowls. Garnish with fresh cilantro and your favorite toppings like avocado, sour cream, or shredded cheese. Serve immediately.
Notes
Storage: Leftover chili can be stored in an airtight container in the refrigerator for up to 3-4 days. It also freezes well for up to 3 months.Variations: For extra heat, add a diced jalapeño or serrano pepper along with the bell pepper. To make it vegan, use a dairy-free cream cheese alternative and ensure your vegetable broth is vegan.Serving Suggestions: Serve with warm cornbread, tortilla chips, or a side salad.
Keyword 30 minute meal, creamy chili, easy chili, meatless chili, spicy chili, vegetarian white bean chili