Traditional French Cassoulet Recipe

A meaty stew of poultry, sausage, pork, and beans, all under a rich, dark brown crust.

French cassoulet served out of a Dutch oven and onto a plate.

Serious Eats / J. Kenji López-Alt

Why It Works

  • Soaking the beans in salted water overnight helps keep them tender as they cook.
  • Chicken used in place of the traditional duck picks up tons of flavor from the cured meat products and comes out meltingly tender and meaty.
  • Adding gelatin to the cooking liquid helps it form a better crust on the casserole as it bakes.

How many times have you seen someone post a photo or recipe of a delicious-looking dish online only to see responses like "Hey! A mini burger is not a slider!" or "That stuff you made with the tiny bit of sugar added to it is not pizza sauce!" or even "If you aren't from [insert locality X], then you can't possibly understand much less make food from [locality X]!"?

I mean, I get it. Food instills passion. Food has history. Food is culture. It should be taken seriously and respectfully. But at the same time, it's meant to be delicious and give pleasure. If someone wants to shove some lobster in a tiny roll, serve it to their friends and family and call it a slider, who am I to tell them otherwise?

That's the logic I'm going to be using today while examining and fully bastardizing what undoubtedly ranks as one of the top 10 most prescriptivist dishes around: cassoulet. What started in the region of Languedoc as a humble peasant dish of dried beans cooked with various sausages and preserved meats—think of it as Southern French Beanee-Weenees—has turned into an all-out culture war with not one, not two, but three towns all claiming to be the originators of the One True Cassoulet.

You thought local sports fans are insane? You should head over to one of those medieval walled cities—Toulouse, Castelnaudary, and Carcassonne all have claims to the dish—and chat with some local cassoulet chefs to see what a true fanatic is like. The comparison is not as crazy as it sounds—members of the Académie Universelle du Cassoulet wear brightly colored uniforms, hand out medals, and wave banners just like sports fans. (I didn't spot any cassoulet cheerleaders twirling confit goose legs along the walls of Carcassonne when I visited a couple years ago, but I wouldn't be surprised if they exist.)

Toulouse chefs insist on mutton, those in Castelnaudary proclaim duck confit and pork make the superior cassoulet, while Carcassonne residents prefer goose and partridge.

Here's the truth of the matter: Cassoulet is not cheffy, prescriptivist stuff. It's a medieval peasant dish designed to make do with whatever was around. In Languedoc, that happened to be dried beans, preserved duck, and preserved pork.

Cassoulet served in an earthenware dish in Languedoc, France.

Serious Eats / J. Kenji López-Alt

Classic Cassoulet

The first time I had cassoulet in its home turf (the Carcassonne version, in fact) it was a revelation: The cassoulet I'd known for nearly all of my professional career is nothing like the cassoulet found in Languedoc. It's as if I'd spent my life in the kitchen at Giordano's in Chicago and just found out that there's a style of pizza beyond deep dish and that not only that, but I'm the weird one here. That loose, almost soup-like stew of beans and meat was so far removed from all versions of cassoulet I'd had in the United States, or even in other parts of France. Gone was the stodgy, stew-like broth. Gone were the bread crumb toppings. Gone were the extra vegetables.

Instead, we were presented with a large, bubbling vat of beans and meat, covered in a crust so dark that it was almost black. Our hostess cracked open the crust to reveal beans swimming in a rich, gelatinous broth with bits of tender duck leg, cured pork belly, pork shanks, and a few different sausages.

Traditional cassoulet served on a plate in Languedoc, France.

Serious Eats / J. Kenji López-Alt

Just as in a good risotto, the cassoulet flowed slowly across the plate, spreading out into a loose sauce. None of that solid-enough-to-mound stuff I'd seen everywhere else. Flavorwise, it was different too. Rich, meaty, and overwhelmingly simple, there were a few background notes from aromatic vegetables—onions, carrots, celery, a few cloves, perhaps some bay leaf and parsley—but the main flavor was just that of the cured meat, a good stock, and beans.

Like I said: simple, peasant fare.

The beans were cooked to the point of maximum creaminess—like a good loose hamburger, they were held together with nothing more than hope, melting on your tongue as soon as they hit your mouth. Similarly, all of the meats were meltingly tender, to the point where the only real texture was from the crust.

The thing is, I thought I knew what cassoulet was before trying it in Languedoc. I made it at fancy pants restaurants. I'd eaten it everywhere from New York to Paris. I'd bought it in ridiculously expensive imported jars. I spent months developing a recipe for Cook's Illustrated that never saw the light of day (people just don't feel like confit-ing their own duck).

But none of them ever came close to the real thing. Too thick, too fussy, too breadcrumb-y.

The version I'm giving you today does. And like any good peasant fare, it requires very little technique or skill, but does require a bit of time and TLC.

So how does one take this simple country dish and bring it home? Come along and I'll show you.

Using Chicken to Make Traditional Cassoulet

I need to get one thing off my chest right away: I am not using duck or goose confit in my cassoulet. I am using plain old chicken legs. Not a true cassoulet without confit, you say? To you I say: "Whoa whoa whoa—back off man. I'm a graduate of the Académie Universelle du Cassoulet, and I have the paperwork to prove it."

Browning bone-in chicken drumsticks and thighs in a Dutch oven for cassoulet.

Serious Eats / J. Kenji López-Alt

I started tackling this recipe with the thought that I'd use confit—I even developed a recipe for making confit yourself from scratch. Then it struck me: I'm spending days making what is meant to be a simple peasant dish, and not only that, but by doing so, the end result is actually less true to the original. How so?

Well, duck is an ingredient in traditional cassoulet not by choice, but by necessity. Back in the days before refrigeration, duck meat was preserved by heavily salting it, slow-cooking it, then packing it under a layer of its own fat. Now sure, it turns out that this produces a fantastically tasty end product, but it's by no means a requisite for cassoulet. I'd argue that the most important part of the confit process—the slow cooking to tenderize tough connective tissue—is entirely wasted in a dish like cassoulet where the meat ends up getting slow-cooked anyway.

In fact, when tasted side-by-side, a confit duck leg slow-cooked in a cassoulet compared to a fresh duck leg cooked in the same pot comes out much drier and stringier, a consequence of its double cooking. I'll just say it: Fresh duck is better for cassoulet than confit duck.

So why chicken? Well, duck happens to be very common and inexpensive in medieval Southern France. In modern urban America, not so much. You could go out and buy duck legs to use for this recipe, but chicken is cheap, widely available, and easy to work with. And you want to know something else? With so much flavor packed into the cooking liquid—sausages, salted pork, cloves—you actually don't miss the duckiness of the traditional dish.

Here's another thing: Most of the distinguishing flavor in a particular type of meat comes from the fat. Cook a beef steak in lamb fat and it'll taste like a lamb chop. Seriously.

So instead of just using duck, what if I were to incorporate a bit of store-bought duck fat?

Scooping store-bought duck fat out of a plastic container for cassoulet.

Serious Eats / J. Kenji López-Alt

I used that duck fat to brown my meat and bingo: true ducky, cassoulet flavor without any need for actual duck. I'd offer a totally insignificant cash reward for anyone who submits themselves to a Pepsi challenge and blind-tastes a bit of slow-cooked chicken and slow-cooked duck from the same pot of cassoulet prepared with duck fat and can tell me which is which.

Even without the duck fat, a chicken-based cassoulet is killer, so don't sweat it if you can't find or don't want to shell out for duck fat.

Two Porks Make a Flavor-Packed Cassoulet

After the poultry, the pork is the next most important flavoring element in the cassoulet (I decided to not even bother trying to seek out mutton shoulder). Sausages are a must. In Languedoc, you'd typically find a garlicky pork sausage flavored with a bit of red wine. Back here, I like to use whatever mild garlic sausage I can find, though if you want to play Cassoulet Choose Your Own Adventure, you can go with any flavor sausage in the shop. Hot Italian? Chorizo? Go for it. I promise you nobody at the table will turn down your food.

Adding stock to pot of dried beans, salt pork, and aromatics for cassoulet.

Serious Eats / J. Kenji López-Alt

For the cured, fatty element, I tried various cuts including salted pork belly, regular bacon, pancetta, salted fatback, and salted smoked ham hocks. Both the bacon and hocks imparted too much smoky flavor to the mix. Fatback was just too fatty, and pancetta was immediately identifiable. Salted pork belly (usually sold as "salt pork" in the meat or sausage case) was the way to go.

I decided to start my cassoulet by rendering the fat from the pork belly and using it to brown the rest of my ingredients.

Browning pork belly in a Dutch oven for cassoulet.

Serious Eats / J. Kenji López-Alt

Browning it as a whole piece before slicing it into smaller chunks for slow cooking seemed like a good way to go about it, but in the interest of saving time and streamlining, I settled on cutting it into chunks before browning. This gave more surface area for rendering fat to escape, as well as more surface for browning, which led to deeper flavor in the finished dish.

Cutting pork belly into cubes for cassoulet.

Serious Eats / J. Kenji López-Alt

I tried various sizes from thin strips to little quarter-inch lardons and found that I much preferred larger, meatier chunks. Pieces about three-quarter-inch square are perfect.

Browning diced pork belly in a Dutch oven for cassoulet.

Serious Eats / J. Kenji López-Alt

Rendering them slowly helps them release maximum fat without burning around the edges. Once the meat is golden brown and has rendered most of its fat, I take it back out of the pot.

How to Brown Chicken for Cassoulet

One thing I learned the hard way: You don’t need to salt your chicken. There's already a ton of salt that makes it into the dish from the salt pork and other ingredients, not to mention the liquid that slowly reduces in the oven.

Four chicken legs on a crinkled piece of brown wax paper, sprinkled with black pepper.

Serious Eats / J. Kenji López-Alt

Salting your chicken separately makes for an inedibly salty dish. Just a few solid grinds of pepper are all it takes before the chicken is ready to go for a swim in the hot rendered pork fat.

One of the biggest mistakes I used to make as a young cook-ling was getting impatient with my browning.

Placing whole chicken legs in a Dutch oven to brown for cassoulet.

Serious Eats / J. Kenji López-Alt

Ok—the first big mistake I made was fearing the fat. I'd drop pieces of chicken or steak into the pan from afar, thinking that I'd save myself a few burns. Instead, all I did was splash hot oil onto my body. When adding food to hot fat, lower it in gently, letting your hand get down right to the surface.

After that, let the chicken do its thing. You know how you think that by walking into the bedroom every few minutes to check on her progress you can get your wife to put those clothes on her body faster for that dinner you're already late to but really you just make her go even slower? Chicken is the same way. Except it's a pot instead of a bedroom, it's browning instead of getting dressed, and it's a cold lifeless shell of what was once a living, breathing creature instead of... Ok. That bit’s the same.*

*Just kidding Adri, I love you and your warm soul.

Point is: don't poke and prod that chicken too much, and definitely don't flip it until it is deeply, deeply browned. All that flavor is going to go right into your beans. Take out the chicken after browning both sides and set it aside with the pork belly.

Once the chicken is done, it's time to brown the sausage.

Can you see where we're going with this? Building up layers of browned flavors.

Preparing Beans and Aromatics for Cassoulet

Now comes a deeper question: how to incorporate the aromatics. Some recipes I've seen call for onions, carrots, celery, and garlic to all be finely chopped and left in the finished dish. I personally find the little bits of vegetables very distracting.

Sautéing onion in a Dutch oven for cassoulet.

Serious Eats / J. Kenji López-Alt

Instead, I chop only the onion and add it to the pot after the meat is done browning, using the steam and moisture it gives off to deglaze the pan, scraping up all the flavorful browned bits that the meat left behind. As for the other aromatics—a carrot, a couple stalks of celery, a head of garlic, some sprigs of parsley, a couple bay leaves, and few cloves—I find leaving them in large chunks and using them to flavor the stock that I cook the beans in is the best way to extract subtle flavor without the distracting bits of vegetable in the finished dish.

As for those beans, I tested my recipes using a few different types of dried white beans from actual lingot I brought back from Languedoc to cannellini to small navy beans. Cannellini were the best domestic option. I tried cooking them a number of ways, from canned (no good—they don't develop flavor the way I'd like them to and the liquid doesn't thicken up enough as they cook) to non-soaked to soaked-and-cooked to completely pre-cooked before adding to the rest of the ingredients.

The best method was somewhere in between. I start by soaking my beans in a salty brine. (Despite what you may have heard about salt preventing beans from softening properly, it actually accomplishes the exact opposite goal: salt ensures that bean skins turn tender.)

Bean skins are held together by pectin, a sort of organic glue. Buttressing this pectin are magnesium and calcium ions. It takes a lot of work to take these down. But in the course of an overnight soak, some of those magnesium and calcium ions will get replaced by sodium ions. These guys are sort of like the double agents of the ion world. The beans will seem firm at first, but as soon as you start cooking them, those sodium ions reveal that they are not nearly as good at keeping pectin strong as the magnesium or calcium. Your bean skins will soften in record time and cook more evenly in the process.

Simmering cannellini beans in a Dutch oven for cassoulet.

Serious Eats / J. Kenji López-Alt

After draining the soaked beans I add them to the pot with the onions along with a quart of store-bought chicken stock and the aromatics. I simmer them until just shy of cooked before fishing out the spent aromatics, adding the meats back in, mixing everything around, and throwing it all into a low oven to finish cooking.

How to Get a Delicious Crust on Your Cassoulet

Beans, chicken, and sausages simmering in a Dutch oven.

Serious Eats / J. Kenji López-Alt

Top down view of a Dutch oven containing simmering beans, chicken, salt pork, and sausages.

Serious Eats / J. Kenji López-Alt

This is where the real magic of cassoulet happens. See, a good stock should be rich with proteins, and just like the proteins in meat, they brown when heated. As you cook a cassoulet in the oven, the top layer of liquid slowly evaporates, leaving an ever more concentrated layer of proteins on its surface. Eventually, these proteins form a raft-like skin.

By occasionally removing the cassoulet from the oven and breaking that skin, allowing fresh liquid to flow above it (traditionalists will tell you that seven times is the optimal number of breaks for the best skin), you build up a significant layer of skin. It's this skin that browns, forming the crust of a traditional cassoulet.

It's these proteins that transform this:

Assembled cassoulet in an earthenware pot before baking.

Serious Eats / J. Kenji López-Alt

Into this:

Baked cassoulet in an earthenware pot with a crispy, browned top.

Serious Eats / J. Kenji López-Alt

At least, that's what's supposed to happen.

The sad reality is that most of the cassoulets I've cooked in the past have ended up looking like this:

Cassoulet baked in a Dutch oven showing very little crispy skin on top.

Serious Eats / J. Kenji López-Alt

A slight indication of skin at the top, but really it looks more like a bug than a feature.

What's the problem?

First off, it's the shape of the pan. A traditional cassole has a tapered shape that gives it an extremely high surface area to volume ratio. More room for evaporation means better skin formation and better browning. In fact, the last two pictures above are of cassoulets cooked in the exact same manner, the only difference being the vessel they are cooked in.

Unfortunately, it's tough to find a good cassoulet pot around here.

A regular cassoulet will form a crust in about four hours of cooking in a 300°F (150°C) oven. What about if you just cook your Dutch oven cassoulet for longer or hotter? I tried a variety of time and temperature ranges. At the very best, what you end up with is this:

A baked cassoulet in a Dutch oven with a dry texture and crust formed by the beans and meat.

Serious Eats / J. Kenji López-Alt

Decent crust alright, but the crust is really formed by the beans and the meat, not by the liquid itself. Underneath, the beans are too dry.

The second problem is the store-bought stock I'd been using. Homemade chicken stock tends to be very high in gelatin, a result of the high amount of connective tissue in the bones and cartilage used to make it. Store-bought stock, by contrast, is thin and watery. It's this gelatin that forms the crusty raft on top of the cassoulet, giving it both crust and body.

It's these two problems—wrong pot, not enough gelatin in the stock—that lead many recipes to resort to using breadcrumbs to create an artificial crust.

So what's the solution? Well the obvious one is to just make your own stock. It's actually way easier than it sounds, though it again requires a bit of a time commitment. I'll admit it: Sometimes even I'm too lazy to make my own stock when I've already got a day-long project ahead of me.

So what's the next best thing?

Just fake it.

By blooming store-bought unflavored gelatin in regular store-bought stock, you can create a rich stock full of body that forms a raft just like the real deal. I don't go easy on the gelatin either (remember, you have to make up for using the wrong-shaped pot as well). A full three packets for a quart of liquid gives it the body and crust I'm looking for.

In order to get a cassoulet that stays nice and loose underneath while still building a crust up top, it's important not to drown that crust out. If your liquid level starts to get too low, add more liquid (just plain water works) to the pot by carefully pouring it along the side of the pot so that it goes under the crust, not over it.

Now there's a cassoulet worthy of rooting for, funny little suits, medieval cheerleaders and all.

Break into that crust, and here's what you've got underneath:

A spoon of tender beans and brown salt pork from the finished cassoulet with crisp skin.

Serious Eats / J. Kenji López-Alt

Creamy, flavor-packed beans with meltingly tender nubs of pork belly and sausage and chicken legs that fall off the bone in moist shreds, all in a rich, sticky liquid that drinks like liquid pork.

This is the kind of fare that demands you sit down and make an event out of, good Languedoc wine and all.

It's the kind of meal so rich and hearty that all you could possibly eat on the side is a simple green salad (preferably with an excellent French vinaigrette).

I mean, just look at it:

Scooping into a cassoulet baked in a Dutch oven with a crisp browned crust and creamy beans.

Serious Eats / J. Kenji López-Alt


Cassoulet on a serving plate next to the Dutch oven it's baked in.

Serious Eats / J. Kenji López-Alt


And it's way easier than it seems. But isn't deceptively simple, delicious food what good country eating is all about, chickens and all?

October 2014

Recipe Facts



Prep: 5 mins
Cook: 8 hrs 20 mins
Active: 60 mins
Soaking Time: 8 hrs
Total: 16 hrs 25 mins
Serves: 6 to 8 servings

Rate & Comment


  • 1 pound dried cannellini beans

  • 3 tablespoons kosher salt; for table salt, use half as much by volume

  • 1 quart homemade or store-bought low-sodium chicken stock

  • 3 packets (3/4 ounce) unflavored gelatin, such as Knox (see notes)

  • 2 tablespoons duck fat (optional)

  • 8 ounces salt pork, cut into 3/4-inch cubes

  • 6 to 8 pieces of chicken thighs and drumsticks, or 4 whole chicken leg quarters

  • Freshly ground black pepper

  • 1 pound garlic sausage (2 to 4 links, depending on size)

  • 1 large onion, finely diced (about 1 cup)

  • 1 carrot, unpeeled, cut into 3-inch sections

  • 2 stalks celery, cut into 3-inch sections

  • 1 whole head garlic

  • 4 sprigs parsley

  • 2 bay leaves

  • 6 cloves


  1. In a large bowl, cover beans with 3 quarts water and add salt. Stir to combine and let sit at room temperature overnight. Drain and rinse beans and set aside.

    Draining cannellini beans after they have been soaked overnight.
  2. Adjust oven rack to lower-middle position and preheat oven to 300°F (150°C). Place stock in a large liquid measuring cup and sprinkle gelatin over the top. Set aside. Heat duck fat (if using) in a large Dutch oven over high heat until shimmering. Add salt pork and cook, stirring occasionally, until browned all over, about 8 minutes. Using a slotted spoon, transfer to a large bowl, leaving rendered fat in Dutch oven, and set aside. (If not using duck fat, cook pork with no additional fat.)

    Browning salt pork cubes in a Dutch oven.
  3. Season chicken pieces with pepper (do not add salt) and place skin side down in now-empty pan. Cook without moving until well-browned, 6 to 8 minutes. Flip chicken pieces and continue cooking until lightly browned on second side, about 3 minutes longer. Transfer to bowl with salt pork.

    Browning chicken pieces in a Dutch oven.
  4. Add sausages and cook, turning occasionally, until well-browned on both sides. Transfer to bowl with salt pork and chicken. Drain all but 2 tablespoons fat from pot.

    Browning sausages in a Dutch oven.
  5. Add onions to pot and cook, stirring and scraping up browned bits from the bottom of the pot. Cook until onions are translucent but not browned, about 4 minutes. Add drained beans, carrot, celery, garlic, parsley, bay leaves, cloves, and stock/gelatin mixture. Bring to a simmer over high heat. Reduce to low, cover Dutch oven, and cook until beans are almost tender but retain a slight bite, about 45 minutes.

    Adding stock to a Dutch oven containing cannellini beans, carrot, celery, parsley, onion, cloves, and bay leaves.
  6. Using tongs, remove carrots, celery, parsley, bay leaves, and cloves and discard. Add meats to pot and stir to incorporate, making sure that the chicken pieces end up on top of the beans with the skin facing upwards. Beans should be almost completely submerged. Transfer to oven and cook, uncovered, until a thin crust forms on top, about 2 hours, adding more water by pouring it carefully down the side of the pot, as necessary, to keep beans mostly covered.

    Adding more water to the Dutch oven by pouring it carefully down the side of the pot.

    Serious Eats

  7. Break crust with a spoon and shake pot gently to redistribute. Return to oven and continue cooking, stopping to break and shake the crust every 30 minutes until you reach the 4 1/2 hour mark. Return to oven and continue cooking undisturbed until the crust is deep brown and thick, about 5 to 6 hours total. Serve immediately.

    A finished cassoulet in a Dutch oven with deep brown crispy crust.

Special Equipment

Dutch oven


If you are using homemade chicken stock that already has lots of gelatin (i.e., it should thicken and gel when chilled), you can omit the unflavored gelatin here; if your stock is store-bought, or if it's homemade but watery even when chilled, the unflavored gelatin is an essential ingredient.

Nutrition Facts (per serving)
612 Calories
35g Fat
39g Carbs
36g Protein
Show Full Nutrition Label Hide Full Nutrition Label
Nutrition Facts
Servings: 6 to 8
Amount per serving
Calories 612
% Daily Value*
Total Fat 35g 44%
Saturated Fat 12g 62%
Cholesterol 110mg 37%
Sodium 2651mg 115%
Total Carbohydrate 39g 14%
Dietary Fiber 9g 33%
Total Sugars 3g
Protein 36g
Vitamin C 2mg 12%
Calcium 174mg 13%
Iron 8mg 42%
Potassium 1438mg 31%
*The % Daily Value (DV) tells you how much a nutrient in a food serving contributes to a daily diet. 2,000 calories a day is used for general nutrition advice.
(Nutrition information is calculated using an ingredient database and should be considered an estimate.)