Spanish Rice and Beans
Rice and beans are staple components of our meals as a family - they're cheap, shelf-stable, and two incredibly versatile ingredients that can be used as the base for so many delicious meals. This Spanish rice and beans recipe is one of my absolute favorite meals to throw together when I'm not 100% sure what to cook.

It simmers away in a delicious Spanish-inspired sauce with creamy beans, and then can be used for anything from bean burritos and burrito bowls, to just having it in a bowl topped with a fried egg and some sliced avocado!
It's a one-pan meal (with a proper fluffy rice finish!), and it's the kind of thing I make when I want something cozy, balanced, and satisfying… but I cannot be bothered with a sink full of dishes.
Fun Fact: Spanish Rice and Beans is actually a Mexican dish!
The Spanish first introduced this dish to Mexicans back in the 15th or 16th Century, hence the name, but this dish actually takes stronger flavor influences from Mexico.
This Spanish rice and beans recipe uses pantry staples to create a vegetarian dish that's nutritious, healthy, and extremely versatile. Enjoy it as a side to my lentil enchiladas, or serve it simply with an egg and some avocado-lime crema on top.
Why Make This Spanish Rice and Beans Recipe?
From a health perspective, rice and beans are an unstoppable combo because together, they create a complete protein. The beans alone, and the rice alone, both lack certain essential amino acids - but combined, each ingredient contributes what the other is missing to form a complete protein! Amazing news if you're vegan/vegetarian - but also for anyone who prioritizes protein in their diet.
Aside from that, I love cooking this recipe because it's an easy way to elevate plain rice and can be thrown together with pantry staples. If I don't have salsa, I'll use some chopped tomatoes or even passata. If I don't have pinto beans, black beans will do! It's really versatile, great for meal prep, and forms a lovely, healthy base for so many different recipes.
Ingredient Notes
The exact quantities are in the recipe card below, but here are a few useful notes (and some swaps).

- Olive oil: Just enough to soften the onion and help the spices bloom. You can swap for butter or vegetable oil if you prefer.
- Onion + garlic: This is the flavor base. Let the onion soften properly before moving on - a rushed onion will taste sharp and slightly "raw" in the final dish. If you're adding more vegetables to the dish, add them along with the onion. Red or green peppers, diced zucchini, sweetcorn, and mushrooms are all great options.
- Spices: This Mexican rice and beans recipe uses a simple combination of smoked paprika + cumin + chili powder + oregano. This combo gives you that warm, smoky "Spanish-style" flavor without needing a million more spices. Smoked paprika is the key one here, but normal paprika will work if that's all you have.
- White rice: Rinse it well until the water runs mostly clear - this helps it cook fluffy instead of sticky. Long grain works best, but basmati also works really nicely. If using brown rice, make sure you increase the cooking time.
- Vegetable broth: This gives way more flavor than water. If you're using a salty stock cube, just go easy on extra salt until the end.
- Salsa: This is what keeps the rice flavorful and chunky. I love using a slightly smoky salsa (or one with roasted tomatoes), and often have one in the pantry to grab for recipes like this. If you're using a spicy salsa, keep that in mind before adding extra chili powder. If you don't have salsa, chopped tomatoes will also work.
- Pinto beans: Creamy, mild, and perfect here. You can swap in black beans or kidney beans (or use a combination!), but pinto beans give the best texture in my opinion.
- Cilantro + scallions: These are the finishing touches that make the whole dish taste fresh instead of flat. If you're not a cilantro fan, parsley works too. A squeeze of lime or lemon over the rice is another nice finishing touch.
How to Make Spanish Rice and Beans
I've included the full instructions at the bottom of this page (which you can also print out!), but here's an overview of making this recipe.
Step 1) Sauté the base
You'll start by sautéing onion and garlic until softened, then bloom your spices so they become fragrant (this step makes a massive difference).
Step 2) Add the spices and toast the rice
Next, toast the rice briefly in the onion and spice mixture - this helps the grains stay separate and adds extra flavor.



Step 3) Add everything else and simmer
Then everything simmers together with vegetable broth, salsa, and beans until the rice absorbs all the liquid.
Once it's done, fluff it up, scatter over cilantro and scallions, and serve.


Top Tips / Chef's Notes
- Use a pan with a tight-fitting lid for this recipe - this is what traps steam and cooks the rice properly. Otherwise, the rice might cook unevenly or not absorb the vegetable stock fully.
- Make sure you keep the heat low once the liquid goes in. Too high a heat can burn the bottom before the rice cooks through! This has happened to me a couple of times, and it is a pain to try to clean burned rice off the bottom of a pan. Avoid at all costs!
- Don't lift the lid constantly. It's tempting, but it lets steam escape and can mess with the texture. Keep the lid on for at least 10 minutes to let the rice cook properly.
- Taste at the end, not the start. Salsa + broth can already be salty, so adjust your salt after cooking.

Storage
Let your leftovers cool fully, then store them in an airtight container in the fridge for up to 4 days.
To reheat, add a splash of water, cover loosely, and heat in the microwave until piping hot. To reheat on the stove, reheat with a splash of broth or water, stirring often
This Spanish rice and beans is also freezer-friendly! Freeze in portions, then defrost overnight in the fridge before reheating.
FAQs
Can I use canned tomatoes instead of salsa?
Yes. Half a 400g can of chopped tomatoes works well, but salsa adds more flavor. If you use canned tomatoes, I recommend adding a pinch of smoked paprika and maybe a tiny splash of vinegar or lime at the end to brighten it up.
Why do I need to rinse the rice?
Rinsing removes excess starch, which helps prevent the rice from becoming sticky or gluey.
Can I make this with brown rice?
Yes, but you'll need to increase cook time (often closer to 30-40 minutes) and add more liquid. Keep an eye on it and top up with broth if it dries out early.
What if my rice is still hard but the liquid is gone?
Add an extra splash of broth or water (2-4 tablespoons at a time), put the lid back on, and simmer a little longer.

Spanish Rice and Beans
Ingredients
- 1 tablespoon olive oil
- 1 white onion diced
- 2 garlic cloves minced
- 1 teaspoon smoked paprika
- 0.5 teaspoon cumin
- 0.5 teaspoon chili powder
- 1 teaspoon dried oregano
- 0.5 teaspoon salt to taste
- 1.5 cups white rice rinsed
- 1.5 cups vegetable broth
- 1 cup tomato salsa
- 14 oz tinned pinto beans drained and rinsed
- ¼ cup fresh cilantro chopped
- 2 scallions finely sliced
Method
- Heat the oil in a pan with a tight fitting lid, and add the diced onion and minced garlic. Saute for 4-5 minutes, until the onions begin to soften and turn translucent.1 tablespoon olive oil, 1 white onion, 2 garlic cloves
- Add the seasonings and stir into the onions for a minute.1 teaspoon smoked paprika, 0.5 teaspoon cumin, 0.5 teaspoon chili powder, 1 teaspoon dried oregano, 0.5 teaspoon salt
- Add the rice and let it toast in the onion/spice mixture for a minute or two.1.5 cups white rice
- Pour in the vegetable broth, salsa, and pinto beans. Mix everything together and then place the lid on your pan and simmer on low heat for 12-15 minutes.1.5 cups vegetable broth, 1 cup tomato salsa, 14 oz tinned pinto beans
- When you remove the pan, the stock should be fully absorbed. Scatter over the fresh cilantro and sliced scallions and serve!¼ cup fresh cilantro, 2 scallions
Nutrition
Notes
- Take the time to let the onions soften, and the spices bloom before adding the stock and salsa - this is what will really take the flavors in the dish to the next level.
- If you want more spice, add in some diced jalapeno when you add the garlic, or increase the amount of chili powder.
- You could also use kidney beans or black beans instead of pinto beans - I like how creamy pinto beans are for this recipe, though.
- If you don't have salsa, a standard can of chopped tomatoes will do; fire-roasted tomatoes would be better! You want that slightly smoky, chunky element the salsa offers.
- You can also use brown rice in this recipe - make sure you increase the cooking time, though, brown rice often takes closer to 30-40 minutes!
- Make sure you simmer the Spanish rice and beans on low heat, or the rice may stick to the bottom of the pan. This is also why a pan with a tight-fitting lid is important, so that the rice and beans steam and the rice can absorb all of the stock.



