Why This Recipe Works
- All-purpose flour strikes the right balance of tenderness and strength in the dough, for shells that are sturdy and crisp.
- Folding the dough over a thin layer of egg white creates tiny pockets of air, helping shells to bubble and blister in the hot oil.
- The dough will double in thickness as it fries, so rolling it to 1/16 inch will keep the shells delicate and thin.
- Refined coconut oil is odorless, so it won't stink up the kitchen as you fry; more importantly, it's solid at room temperature, giving the cannoli shells a crisp and buttery texture that never feels greasy or soggy.
Let's get this out of the way up front: the most authentic part of this recipe is my reasonably Italian-sounding name. The history of cannoli is steeped in more regional ingredients, cooking traditions, and family secrets than I could ever hope to honor, much less integrate, in a single recipe. The best I can do is take the same approach I use in developing copycat recipes like homemade Oreo-style cookies and fig Newtons—focus on capturing the taste, texture, and appearance we long for, even when that means breaking certain rules along the way.
Which is to say, my recipe itself may aim to create the Platonic ideal of cannoli, but there's nothing traditional about what it looks like on paper. My pastry shells don't contain a single drop of Marsala or any eggs at all, but they're blistered, crisp, and tender, and almost savory in their toastiness. My ricotta filling doesn't include even a pinch of powdered sugar, but it's wonderfully sweet and silky smooth. The two unite in a pastry that's rich and light, creamy and crunchy, earthy and floral, mellow and intense—a study in contrast if there ever was one. It takes some time, and an arsenal of equipment to pull off, but the results are more than worth the effort.
Of course, it all starts with the right dough. Believe it or not, cannoli shells are really a type of cracker—nothing more than flour, water, salt, and a knob of butter. Many classic Italian recipes use Marsala as some of that liquid, not for flavor but for the same reason Kenji puts vodka in pie dough—to provide hydration while limiting gluten development.
Good quality Marsala can be hard to find here in the States, and it's an expensive purchase for recipes that only call for a tablespoon. The far easier method for controlling gluten development is to choose a low-protein all-purpose flour such as Gold Medal or Pillsbury. This builds the right balance of starch and protein into the recipe from the start, giving the shells a perfect combination of tenderness and strength. Just toss all the ingredients into a food processor and blitz until satiny smooth and a little...cobwebby, for lack of a better term.
Hypothetically, this can be done by hand if you have the patience to slap and stretch the sticky dough for an hour, but it's a 90-second job in a food processor—the only sane option so far as I'm concerned. Transfer the sticky dough to a lightly greased bowl, cover, and set it aside for at least 2 hours or up to 24. Either way, that flexibility leaves more than enough time to make the filling at your leisure, so don't feel compelled to tackle the entire recipe, start to finish, in a single afternoon.
On that note, my take on the ricotta filling is certainly where this recipe deviates most from tradition. Virtually all cannoli recipes use nothing more than powdered sugar to thicken and sweeten the ricotta. It's the easiest method for sure, but the undissolved starch from the powdered sugar leaves a chalky ghost in every bite. If the ricotta is anything less than spectacular, the result is a filling that tastes like, as Daniel once put it, caulk.
My solution is to make a small batch of vanilla pudding, providing a sweet, thick, creamy, and flavorful foundation for the ricotta filling (it's the same technique I use for making German buttercream and a super-stable cream cheese buttercream). Once the vanilla pudding is cool, beat it until smooth and creamy (either with a flexible spatula or the paddle of a stand mixer), then fold in the ricotta by hand.
Super-Thick and Stable Custard Base
It should go without saying that the ricotta needs to be of a very high caliber. Anything made with gums, stabilizers, preservatives, or other additives should be rejected out of hand. If you're lucky enough to live near an excellent producer, locally made ricotta is an extraordinary thing (at Serious Eats, we love Salvatore Bklyn and Di Palo's). Shy of that, look for ricotta made with nothing more than milk or whey and possibly salt and/or an acid or starter of some sort (true ricotta is made from nothing more than whey, but it's a rarity outside of Italy). Ricotta is the backbone of cannoli, and if it's not delicious enough to eat by the spoonful, your cannoli will be doomed to mediocrity from the start.
After you've made the filling, transfer it to a large, disposable pastry bag fitted with a plain, 1/2-inch round tip and refrigerate until needed—it will keep up to three days, another excellent make-ahead option.
Next up: rolling the dough. It will seem impossibly sticky in the bowl, but all it needs is a generous coating of flour. Seriously, don't be shy. Excess flour can be brushed off later, so use as much as you need to feel comfortable handling the sticky dough. Roll it until no more than 1/16-inch-thick, then brush it lightly with egg white and fold it in half.
Like a poorly applied screen protector, this results in tons of little air pockets trapped between the layers. In turn, these pockets help the dough to blister in the hot oil, giving the shells a delicate honeycomb crunch and plenty of surface area to fry up golden brown. Re-roll the dough until it's 1/16-inch-thick once more, then cut as many 3 1/2–inch rounds as possible—the largest cutter in Ateco's graduated set is perfect for the job.
Gather up all the scraps and transfer to an airtight container until you have the time and space to re-roll. While you prepare the oil for frying, the cutouts can be left as-is; if you think this will be longer than 20 minutes, cover them with plastic wrap or a clean towel to keep them from drying out.
The most important thing about cannoli, since it's a deep-fried pastry, is the oil itself—an ingredient most recipes leave to chance as if any old oil will do. Nothing could be further from the truth; for cannoli, choosing the right oil is just as important as choosing the best ricotta. That's because cannoli were traditionally fried in lard, a solid fat. Modern recipes use liquid oil for sheer convenience, and that's a huge problem.
Pastries may crisp when fried in liquid oil, but the oil they absorb will ultimately create a sense of greasiness. Imagine a piece of bread dunked in oil for a few minutes and the way it would squish in your mouth. That's nice if you're talking about a chunk of focaccia dipped in a fine olive oil, but it's not exactly what we look for in a pastry. When fried in solid fats, however, the oil the dough absorbs will revert to its solid state once cool, creating a texture that's light and crisp, with lingering richness as the oil melts on your tongue, like a generously buttered slice of toast.
If you can find enough leaf lard to deep fry, go for it! But my favorite alternative is refined coconut oil. Like lard, it's solid at room temperature and liquid when warm.
Even better, it doesn't produce the funky smell most often associate with frying at home; in fact, it's totally odorless, so the only thing you'll notice will be the aroma of the cannoli shells as they brown. Little jars of refined coconut oil can be pretty pricey in supermarkets, but when shopping in bulk at warehouse clubs or online, that price will drop to less than $3 a pound. If coconut oil isn't an option due to allergies, other solid fats like palm oil or vegetable shortening will do just fine.
Whatever solid fat you choose, use enough to form a two-inch deep layer in a pot that's at least four inches deep, and warm it to about 360°F (182°C), using a clip-on digital thermometer to monitor the temperature in real time. Meanwhile, form the shells by wrapping the cut-outs around tapered cannoli forms and sealing the flap with a dab of egg white.
How to Form Cannoli Shells
When the oil is ready, fry the shells until pale gold, about two minutes. If the time varies significantly for you, check the placement of your thermometer; it's normal for the fry-time to vary a little depending on the specific thickness of the dough and the conductivity of the form, but any major differences are a sign the oil is too hot or too cool.
How to Release Cannoli Shells From Their Forms
Transfer the fried shells to a paper towel-lined baking sheet. Holding the shell itself with a pair of kitchen tweezers or tongs, rap the tapered end of the form to loosen the shell. Set the forms aside until cool, then continue shaping and frying the remaining cutouts the same way.
Fried in a solid fat like refined coconut oil, the cannoli shells will keep up to one week in an airtight container. Once filled, that solid fat will act like a waterproof jacket and keep the filled cannoli crisp for about four hours. Still, I think cannoli are best when the shells are freshly fried and filled, perhaps because at that point I've been anticipating them all day.
I can't argue with the allure of dark chocolate and toasted pistachios, but, to me, fresh cannoli are absolutely perfect on their own, delicate and crisp and creamy—just begging for a shot of espresso.
How to Make Homemade Cannoli
How to make the best cannoli—creamy filling, crisp shells, and all.
For the Shells:
4 1/2 ounces all-purpose flour, such as Gold Medal, plus more for dusting (about 1 cup, spooned; 125g)
1 ounce unsalted butter (about 2 tablespoons; 25g)
1 teaspoon (4g) Diamond Crystal kosher salt; for table salt, use about half as much by volume or the same weight
1/16 teaspoon ground cinnamon
3 ounces cold tap water (about 1/3 cup plus 1 tablespoon; 85g)
For the Filling:
4 1/2 ounces plain or toasted sugar (about 2/3 cup; 130g)
1 ounce cornstarch (about 1/4 cup, spooned; 25g)
1/4 teaspoon Diamond Crystal kosher salt; for table salt, use about half as much by volume or the same weight
1 large egg (about 2 ounces; 55g)
1 large egg yolk (about 1/2 ounce; 15g), white reserved for the shells (see below)
8 ounces milk, any percentage will do (about 1 cup; 225g)
1/2 ounce vanilla extract (about 1 tablespoon; 15g)
1 teaspoon lemon zest
1/16 teaspoon ground cinnamon
20 ounces fresh ricotta, strained to a sour cream-like consistency if needed (about 2 1/3 cups; 565g; see notes)
42 ounces refined coconut oil, such as Nutiva, or other solid fat like vegetable shortening, lard, or palm oil (about 6 cups; 1.2kg)
1 egg white, well beaten (about 1 ounce; 25g)
To Serve (Optional):
3 ounces finely chopped dark chocolate (about 1/2 cup; 85g)
3 ounces finely chopped pistachios (about 1/2 cup; 85g)
For the Dough: In the bowl of a food processor, combine flour, butter, salt, and cinnamon. Pulse until the butter disappears, about 30 seconds, then add water and continue processing until dough rides up on the blade and forms a silky but stringy dough. This will take about 2 minutes, but the timing will vary depending on the size and horsepower of the food processor. Transfer to a lightly greased bowl, cover tightly, and allow the dough to relax at least 2 hours at room temperature, or up to 24 hours at cool room temperature.
For the Filling: In a 3-quart stainless steel saucier, whisk sugar, cornstarch, and salt until well combined. Whisk in egg, yolk, and milk. Once smooth, place over medium-low heat and cook, whisking constantly but gently until warm to the touch, about 3 minutes. Increase heat to medium and cook, now whisking quite vigorously, until the custard begins to thicken, about 2 minutes more. The custard may seem lumpy, almost like cottage cheese, but continue whisking until emulsified and silky smooth.
When the thick custard begins to bubble, set a timer and continue cooking and whisking for exactly 1 minute. (This step helps neutralize a starch-dissolving enzyme found in egg yolks.) Off heat, stir in vanilla extract, lemon zest, and cinnamon. Pour the custard onto a large plate or pie dish to form a thin layer (this will speed the cooling process), then press a sheet of plastic against the surface to prevent a skin from forming. Refrigerate until thick and cool, about 1 hour, or to a temperature of 68°F (20°C). Alternatively, refrigerate the custard up to one week and then return to room temperature until warmed to approximately 68°F.
In the bowl of a stand mixer fitted with a paddle attachment, beat the cool pudding until creamy and smooth (this can also be done by hand using a flexible spatula, although it may seem impossible at first). Fold in the ricotta. Refrigerate in an airtight container until needed, up to 3 days.
Preparing the Dough: Turn the soft dough onto a well floured surface and, using as much flour as needed to prevent sticking, roll until approximately 1/16 inch thick. Brush excess flour from the dough, then lightly brush the surface with egg white. Carefully fold the dough in half, then dust with more flour and continue rolling to 1/16 inch. Gently lift the dough to make sure it hasn't stuck, then cut into 3 1/2-inch rounds; re-roll the scraps and cut as before.
Preparing the Oil: Melt the refined coconut oil (or other solid fat) in a 5-quart stainless steel or enameled Dutch oven. Clip on a digital thermometer and warm to 360°F (182°C) over medium heat. Meanwhile, line a baking sheet with 3 layers of paper towels, and form the shells.
To Form the Shells: Lightly grease the cannoli forms with pan spray or oil, then place each onto a round of prepared dough. Wrap the dough around the cannoli form, using a bit of egg white to firmly seal the flaps together where they overlap. (The dough should be comfortably secure around the form, neither too tight, as it will make the forms difficult to remove after frying, nor too loose, as this will allow the dough to slide free.)
To Fry: Working with three or four at a time, carefully lower the prepared cannoli forms into the hot oil and fry until the dough is blistered and pale gold, about 2 minutes. If any sink to the bottom (due to the weight of the forms), prevent them from burning by moving the cannoli from time to time with a pair of kitchen tweezers or tongs. When golden, lift the cannoli by the shell itself (rather than the slippery forms), and transfer to a paper towel–lined baking sheet.
While hot, use the kitchen tweezers or tongs to rap the tapered end of the form against the tray so the pastry shell slides free. Set the forms aside to cool, then re-use as before to form and fry the remaining dough. Cool the shells to room temperature and use immediately, or store up to 1 week in an airtight container. If using liquid fry oil, the shells cannot be prepared in advance.
To Serve: Transfer the prepared ricotta filling to a pastry bag fitted with a 1/2-inch plain round tip. Insert the tip of the pastry bag into a pastry shell until it reaches the middle; begin piping with steady pressure and slowly draw the tip from the tube. When you reach the edge of the shell, stop piping, then move the pastry tip away. Repeat on the opposite side, and fill the remaining cannoli shells the same way. Dip one or both ends of the filled cannoli into dishes of chopped chocolate and pistachio pieces, if desired. Enjoy immediately, or cover in plastic and refrigerate up to 4 hours (this will only work for shells fried in refined coconut oil; shells fried in liquid oil cannot be held more than a few moments).
Food processor, rolling pin, 3 1/2-inch round cutter, two pastry brushes, tapered, carbon steel cannoli forms, clip-on digital thermometer, heavy duty kitchen tweezers or stainless steel tongs, disposable pastry bag, a plain, 1/2-inch round tip
Cannoli are little more than edible serving vessels for ricotta, so don't settle for crappy supermarket brands chock full of gums, stabilizers, preservatives, or other additives. Their chalky flavor and squeaky mouthfeel won't magically improve in the filling, so if you can't find something that's outrageously good by the spoonful, cannoli are doomed to mediocrity. If at all possible, look for small, local producers in your area (at Serious Eats, we love Salvatore Bklyn), but national brands like Sorrento or Calabro will do in a pinch.
|Nutrition Facts (per serving)|
|Amount per serving|
|% Daily Value*|
|Total Fat 7g||10%|
|Saturated Fat 5g||27%|
|Total Carbohydrate 9g||3%|
|Dietary Fiber 0g||0%|
|Total Sugars 5g|
|Vitamin C 0mg||0%|
|*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.|