Pasulj, a paprika-red white bean and beef soup, served in a deep bowl with bread and raw onion
Prep20 min
Cook2 hr 30 min
Serves4 servings
CuisineSerbian

Pasulj Recipe: Serbian White Bean and Beef Soup

Pasulj is Serbia's national bean dish, made here with white beans, beef, onion, carrot, paprika, and bay leaf. Based on the army-canteen version, it explains why you never stir the beans while they cook, how to finish with a flour roux (zaprška), and how to avoid undercooked beans.

Total: 14 hr 50 minLevel: Beginner

Cooking flow

Cooking steps

STEP 11 / 5

Soak the white beans overnight (about 12 hours)

about 12 hours

White beans plumped after soaking overnight in a large bowl of water
They are rehydrated when the wrinkles are gone and they are plump and round

Rinse the beans briefly and soak them in at least three times their volume of cold water in a cool place overnight. The beans take up water and more than double in size, so use a large bowl. The next morning, they are fully rehydrated when the surface wrinkles are gone and they are plump and round.

STEP 22 / 5

Parboil the beans (about 15 min)

about 15 min

White beans being parboiled in a pot with white foam floating on the boiling water
Boil for 10–15 minutes after it comes to a boil and discard the water

Discard the soaking water, put the beans in a pot, and add fresh cold water to just cover. Bring to a boil over high heat, then boil over medium heat for 10–15 minutes, drain in a colander, and discard the cooking water. The white foam that rises is removed along with it.

STEP 33 / 5

Brown the beef and aromatics (about 10 min)

about 10 min

Onion, carrot, and cubed beef being browned in a skillet until the moisture is gone
The moisture has cooked off and the fat is sizzling

While the beans boil, heat half the oil (2 tbsp) in a skillet over medium heat and cook half the onion and the carrot for 2–3 minutes until softened. Add the beef and cook until the liquid released by the meat has evaporated, the surface has changed color, and the fat sizzles. Turn off the heat.

STEP 44 / 5

Combine the beans and meat and simmer without stirring (about 1 hour 30 min – 2 hours)

about 1 hour 30 min – 2 hours

White beans and beef simmering in a deep pot over medium-low heat without stirring
Simmer without stirring until the beans can be lightly crushed with a finger

In a heavy, deep pot, put the parboiled beans and the browned meat, and add lukewarm water to cover the ingredients well. Bring to a boil over high heat, then reduce to medium-low, set the lid slightly ajar, and cook until the beans can be lightly crushed with a finger. Allow 1 hour 30 minutes to 2 hours. During this time do not stir the beans; only add lukewarm water when it reduces. Stirring splits the beans, and they sink to the bottom of the pot and scorch easily. Once the beans are soft, add the bay leaves.

STEP 55 / 5

Make the roux, add it, and thicken (about 30 min)

about 30 min

Flour fried to a pale golden brown in a skillet, paprika added, and the roux dissolved into the pot
The roux should be a pale golden brown. Stir in the paprika off the heat

In a small skillet, heat the remaining 2 tbsp oil over medium heat, cook the remaining onion for about 1 minute, then add the flour and cook, stirring with a spatula, for 2–3 minutes until a pale golden brown. Take it off the heat and stir in the paprika and garlic. Add the dissolved tomato paste, the salt, and the roux to the pot, and from here on keep stirring from the bottom so it does not clump. Simmer over low heat for 20–30 minutes; it is done when the broth has thickened and leaves a thin film on the back of a spoon. Sprinkle with black pepper and parsley and adjust with salt.

0 / 0
Ingredients

Ingredients

1 / 2

Beans and filling

Ingredient Amount Substitutes & notes
White beans (dried) 360g Great northern, navy, or cannellini. Any variety will do
Beef (cubed) 300g Chuck or shank. Trim bones and fat and cut into 2 cm cubes
Onion 75g (1/2 medium) Finely chopped. Half is browned with the meat, the rest goes in the roux
Carrot 30g (1/4 small) Finely chopped
Vegetable oil 4 tbsp (about 60 g) Lard also works. Half is used to brown the meat, the rest for the roux
Bay leaves 2–3
2 / 2

Roux (zaprška) and finish

Ingredient Amount Substitutes & notes
All-purpose flour just under 3 tbsp (about 24 g) Plain (all-purpose) flour
Paprika powder 1/2 tsp Not hot
Garlic 3 cloves Finely chopped
Tomato paste 3 tbsp Dissolve in 50 ml lukewarm water
Salt 1 tsp or more Adjust to taste
Black pepper a little
Parsley (dried or fresh) a little For finishing
0 / 0

At midday in Belgrade, a reddish steam rises from a big pot in a canteen. Inside is white bean soup: thick broth tinted with paprika, bits of meat peeking out between the beans. You tear off a piece of crusty bread, dunk it, and bite into a raw onion between spoonfuls. They say nothing is more familiar to Serbians than pasulj, which simply means "beans."

That the name is just the word for "beans" shows how deeply it is rooted in the everyday table. The method is humble: soak dried beans overnight and simmer them with meat and aromatics. The finish, though, is a roux of flour fried in oil, called zaprška. Do not stir the beans while they cook, and add the roux at the end. Follow these two rules and the beans keep their shape in a thick, velvety broth.

Beans Beloved in Former Yugoslav Barracks

An old army canteen scene, bean soup from a big pot ladled into metal dishes

The food-rating site Taste Atlas published a "100 Best Bean Dishes in the World" list in 2024, and three Serbian dishes made it. According to the Serbian daily Kurir, they are pasulj at number 6, brothy pasulj (čorbast pasulj) at number 29, and the baked bean dish prebranac at around number 40 (Kurir reported 39th and N1 reported 40th). Pasulj is described as white beans simmered into a thick soup with sausage, bacon, or ham, plus onion and carrot, seasoned with paprika, bay leaf, and garlic. It is eaten not only in Serbia but across the Balkans.

Kurir also writes that brothy pasulj was a staple of the army of the former Yugoslavia because it is easy to make and nourishing. A dish that could be made in huge quantities in one pot and filled soldiers' stomachs with cheap beans suited the army canteen perfectly. Under the name soldier's pasulj (vojnički pasulj), recipe articles describing the army canteen method still appear in the Serbian media today.

Did you know?

The best-known way to cook Serbian pasulj is with smoked meat or spare ribs. Smoked meat adds a smoky aroma and bones add richness. Kurir describes the "soldier's pasulj" this recipe is based on as characteristic for using beef, which is not usually put in this dish.

This recipe is based on the "JNA soldier's pasulj" that Kurir cited from the Serbian regional news site 021.rs. The original gives a single batch in small units, so the quantities are tripled to a convenient amount for four people. Because it is simmered with beef instead of smoked meat, the smoky note is restrained and the flavors of beans and beef come through directly.


Ingredients (serves 4)

White beans, beef, onion, carrot, garlic, tomato paste, paprika, and bay leaves for pasulj

This is a home-sized version with the ingredients of the "soldier's pasulj" published in Kurir tripled.

In Serbia no particular bean variety is specified, and the Kurir article says any dried beans will do. Any white bean sold by name in your market is fine. Paprika powder and bay leaf are available in the spice aisle of most supermarkets. Paprika decides the color and aroma of the soup, so in this recipe you add it while making the roux to bring out its fragrance.

Tip

For a smoky aroma, replace half the beef with a block of bacon or smoked sausage. The taste comes closer to the smoked-meat pasulj commonly made in Serbia. It adds saltiness, so go light on the final salt.


How to Make Pasulj

The beans soak overnight (about 12 hours), then simmer for around 2 hours in total. The time it takes for beans to soften varies with the variety and age of the beans.

Caution

Eating white beans and other kidney beans raw or undercooked can cause food poisoning with nausea, vomiting, and diarrhea. The cause is a protein called lectin, and Japan's Ministry of Health, Labour and Welfare explains that there is no problem if the beans are soaked in water sufficiently and then boiled until soft at a full boil. Do not eat beans that have only been roasted or briefly boiled.

Tip

Paprika powder scorches and turns bitter instantly in hot oil. Stir it in after taking the roux off the heat for a vivid color and fragrant result.

Smoked Meat, Beef, or No Meat

Pasulj with smoked meat and spare ribs next to a beef pasulj for comparison

The meat in Serbian pasulj differs from house to house. The best-known version uses smoked bacon, pork spare ribs, or sausage, and the number 29 brothy pasulj that Kurir mentions also says smoked meat and spare ribs add a smoky aroma. If you use smoked meat, put it in the pot from the start with the beans and simmer together until the beans are soft. The smoke flavor transferring to all the broth is the greatest treat of this pasulj.

Did you know?

Kurir lists crusty bread and raw onion as accompaniments to pasulj. Biting a raw onion between spoonfuls clears the heaviness of the beans and roux.

Served with Crusty Bread

A Serbian table with a deep bowl of pasulj and crusty bread
Serve the finished pasulj in a deep bowl with bread

Ladle it generously into deep bowls and serve with crusty bread. Tear the bread, dunk it, and let it soak up the thick broth. Cut the raw onion into wedges, place them at the edge of the plate, and bite into them between spoonfuls.

Pasulj is also a dish that people make in a big pot at home and eat over several meals. Reheating lets the beans soak up more broth and thicken, so loosen it with a little hot water. Another Serbian dish, mućkalica (in Japanese), a braise of pork and paprika, lets you compare different ways of using paprika.

FAQ

Reheated pasulj being loosened with a little hot water

Can I make it with canned white beans?

Yes. Canned beans are already cooked, so skip the parboiling and simmer them with the browned meat for 30–40 minutes to make the beef tender, then add the roux. The beans break easily, so do not stir until you add the roux.

The beans will not soften.

Older beans can stay hard even after long cooking. Add lukewarm water as needed and extend the cooking time in 30-minute steps. Do not add the roux until the beans can be lightly crushed when pressed with a finger.

My roux clumped when I added it.

Dilute the roux in a small bowl with a little of the pot's broth, added gradually, and then return it to the pot; this makes clumps less likely. Clumps that have already formed can be broken up by whisking in the pot.

How can I make it spicy?

Replace some of the paprika added to the roux with hot paprika powder, or add a little coarsely ground chile at the end.

Can I make it ahead?

Cool it, refrigerate, and when reheating add a little hot water and bring everything to a full boil, stirring from the bottom. This article does not give a storage-time guideline because no source for one could be confirmed.

Sources