This is the kind of soup that makes you want to pull on a sweater and stay in all day — deeply savory, hearty enough to be a full meal, and built entirely from pantry staples and fresh vegetables. A classic soffritto of onion, carrot, and celery forms the flavor base, layered with garlic, tomato paste, rosemary, thyme, and a pinch of red pepper flakes for gentle heat. Cannellini beans and crushed tomatoes go in next, and the move that makes this broth truly special is mashing about a quarter of the beans right in the pot — it creates a naturally thick, creamy texture without any dairy or added thickeners. Ditalini pasta cooks directly in the broth, soaking up all that flavor as it goes. Every single ingredient here is plant-based by nature, so there's no swapping or substituting required — this is just good, honest cooking. Finish each bowl with a drizzle of olive oil and fresh parsley, or add a sprinkle of vegan parmesan if you want something a little more indulgent. It serves six, which means leftovers are practically guaranteed — and this one only gets better the next day.
About Fig
Fig is a food discovery app that helps you find foods and recipes that fit your dietary needs. Whether you have food allergies, intolerances, or follow a specific diet, Fig makes it easy to eat with confidence.
2 cans (15 oz each) cannellini beans, drained and rinsed
5 cups vegetable broth
1 cup dry ditalini or elbow pasta
1 tsp salt, plus more to taste
½ tsp black pepper, plus more to taste
For serving
2 tbsp fresh parsley, chopped (optional)
2 tbsp olive oil, for drizzling (optional)
vegan parmesan, for serving (optional)
Instructions
1
Heat 3 tbsp olive oil in a large pot or Dutch oven over medium heat until shimmering. Add the onion, carrots, and celery and cook, stirring occasionally, until softened and the onion is translucent, about 8–10 minutes.
2
Add the garlic, tomato paste, dried rosemary, dried thyme, and red pepper flakes. Cook, stirring constantly, until the garlic is fragrant and the tomato paste has darkened slightly, about 2 minutes. Watch closely so the garlic does not brown.
Want the full recipe?
Create a Fig account for step-by-step instructions, access to our full recipe library, and more!