Desserts
This chocolate cannoli recipe delivers crispy shells filled with velvety ganache that tastes like a bite of heaven. 🌟 The secret lies in perfectly fried shells that stay crisp even after cooling, paired with a rich ricotta-chocolate filling that balances creamy and crunchy textures.
I've perfected this technique after years of trial and error—no more soggy shells or overly sweet fillings.
What sets this recipe apart is the balance of traditional methods and modern shortcuts. You'll fry the shells to a golden brown using a deep-frying thermometer for precision, then cool them on a rack to maintain that satisfying crunch.
The filling combines sweetened ricotta with melted chocolate for a smooth, decadent center that pairs beautifully with the crispy exterior.
By the time you're done, you'll have cannoli that look and taste like they came from an Italian bakery—crispy shells dusted with cocoa powder, filled with silky chocolate ganache, and ready to impress.
The aroma alone will have everyone gathering around your kitchen, and each bite delivers that perfect contrast of textures and flavors.
Whether you're making these for a special occasion or just treating yourself, this recipe delivers professional-quality results with simple techniques. Let's get started on creating your own batch of chocolate cannoli magic.
Ingredients for chocolate cannoli
Twelve ingredients. One decadent dessert. Crispy shells meet silky chocolate filling.
| Ingredient | Amount | Notes |
|---|---|---|
| Cannoli Shells 🍪 | 12 whole | Store-bought or homemade, cooled |
| Whole Milk Ricotta Cheese 🧀 | 2 cups | Full-fat for creaminess |
| Granulated Sugar 🍚 | ½ cup | For sweetening ricotta |
| Semisweet Chocolate Chips 🍫 | 1 cup | High-quality, 60% cacao |
| Unsalted Butter 🧈 | 4 tbsp | Melted for richness |
| Large Egg Yolks 🥚 | 2 whole | For binding filling |
| Vanilla Extract 🌿 | 1 tsp | Pure, high-quality |
| Ground Cinnamon 🌶️ | ½ tsp | Optional, for warmth |
| Unsweetened Cocoa Powder 🍫 | ¼ cup | For dusting shells |
| Vegetable Oil 🫒 | 3 cups | For frying shells |
| All-Purpose Flour 🌾 | 1 cup | If making shells from scratch |
| Salt 🧂 | ½ tsp | Fine sea salt |
| Heavy Cream 🥛 | ¼ cup | For extra richness (optional) |
| Powdered Sugar 🍚 | ½ cup | For garnish |
The ricotta is the heart of these cannoli—full-fat makes all the difference. Whole Foods or Trader Joe's carry the best quality, but any store's ricotta works if it's creamy and fresh. Look for ricotta with a high fat content (at least 15%)—this ensures that silky texture. The chocolate chips? Ghirardelli or Lindt are my go-tos, but any good-quality 60% cacao chips will do. If you're making shells from scratch, King Arthur flour gives you the best texture. The key is keeping everything chilled until frying—warm ricotta or dough will make soggy shells.
No ricotta on hand? Blend cottage cheese until smooth as a substitute, but you'll lose that signature texture. Short on chocolate chips? Melt a chocolate bar and let it cool slightly before mixing—it'll be just as rich. The vanilla extract should be pure, not imitation. Nutmeg can replace cinnamon if you prefer, but I find cinnamon adds just the right warmth. For the frying oil, vegetable or canola oil works best—keep it at 350°F for perfect shells. And don't skip the cooling rack—trust me, it keeps those shells crispy.
Store the empty shells in an airtight container for up to 3 days if you're prepping ahead. The filling keeps in the fridge for 2 days, but it's best fresh. Once filled, these cannoli stay crispy for about 24 hours—after that, the shells soften. Freeze filled cannoli for up to 1 month by wrapping each one individually in plastic wrap. The powdered sugar garnish is optional but adds that bakery touch—just dust it on right before serving.
Why You'll Love This Recipe
- The contrast is chef’s kiss: the cannoli shells stay perfectly crisp while the filling melts into your mouth like a warm hug. Honestly, the chocolate chips add little bursts of richness that make this dessert feel like a little treat, not just a snack.
- No Fuss Filling: I swear, the filling comes together in five minutes—just ricotta, sugar, melted butter, and chocolate chips folded in until it’s silky smooth. No whisking, no straining, no stress. That first bite of crisp shell with gooey chocolate-ricotta? Worth every second.
- Craving-Worthy Crunch: The contrast is chef’s kiss: the cannoli shells stay perfectly crisp while the filling melts into your mouth like a warm hug. Honestly, the chocolate chips add little bursts of richness that make this dessert feel like a little treat, not just a snack.
- Party Proven: I’ve made these for birthdays, holiday desserts, and even as a last-minute hostess gift—no one ever guesses how quick they are. The shells hold up well, and the filling stays creamy (not soggy) for hours. Bonus: they’re easy to assemble ahead of time.
Step-by-step instructions for chocolate cannoli
Here's how to create crispy shells filled with velvety chocolate ganache every time.
👨🍳 Step 1: Prepare the Perfect Ricotta Filling
In a large mixing bowl, combine the 2 cups whole milk ricotta cheese, 0.5 cup granulated sugar, 2 whole large egg yolks, 1 tsp vanilla extract, and 0.5 tsp ground cinnamon. I like to use a hand mixer here—it blends everything smoothly without overworking the delicate ricotta. Mix on low speed until completely smooth, about 2 minutes, until no lumps remain.
Here's the thing—ricotta can be watery, so I press it through a fine-mesh sieve first to remove any excess moisture. This ensures your filling stays silky rather than grainy. Taste the mixture and adjust sweetness if needed (I usually don't—this ratio works perfectly). Cover and refrigerate while you prepare the shells.
🔥 Step 2: Fry the Cannoli Shells to Crispy Perfection
Heat 3 cups vegetable oil in a deep pot to 375°F—this is crucial for achieving that perfect golden-brown crisp. While the oil heats, dip each of the 12 whole cannoli shells into the 0.25 cup unsweetened cocoa powder mixture, coating them evenly. This gives that classic chocolate cannoli look and adds subtle depth.
Fry the shells in batches of 3-4 at a time for 15-20 seconds until they're golden brown and crisp. Don't overcrowd the pot or the oil temperature will drop. Transfer to a paper towel-lined plate to drain excess oil. The shells should be crisp enough to hold their shape but not brittle—this is your target texture. Keep them warm in a 200°F oven while you prepare the filling.
🍳 Step 3: Make the Rich Chocolate Ganache
In a heatproof bowl, combine the 1 cup semisweet chocolate chips and 4 tbsp unsalted butter. Place this bowl over a pot of simmering water (double boiler method) and stir until melted and smooth. Remove from heat and whisk in the 0.25 cup heavy cream until fully incorporated. Let the mixture cool slightly—it should thicken but still be pourable.
Here's where it gets fun—stir in half of the prepared ricotta mixture. The ganache should thicken noticeably as it cools. If it's too thick to pipe, gently warm it for 10 seconds in the microwave. The ganache should coat the back of a spoon but still flow smoothly through a piping bag.
🥘 Step 4: Fill and Assemble Your Cannoli
Using a piping bag fitted with a large star tip, pipe about 2 tablespoons of the ganache-ricotta mixture into each crispy cannoli shell. Fill them generously but not overflowing—you want room for the powdered sugar garnish. Work quickly so the shells stay warm and crisp. I like to fill them right before serving so the shells maintain their perfect crunch.
While still warm, dust each filled cannoli generously with 0.5 cup powdered sugar. Tap gently to remove excess, then serve immediately. The contrast between the crispy shell and silky filling is what makes these irresistible. If you've made them ahead, store unfilled shells separately and fill just before serving to maintain crispness.
Pro Tips For Making Chocolate Cannoli
- Whip Ricotta Cold: I used to melt ricotta like it was mascarpone—big mistake. Whole milk ricotta whips best when chilled to 40°F (4°C) or colder. Spread it on a tray, cover with plastic, and refrigerate for 30 minutes before whipping. Cold fat = lighter texture, no graininess, and way more volume.
- Toast Chocolate Chips: Skip the microwave—your chocolate will seize up. Instead, spread semisweet chips on a baking sheet and toast at 325°F (160°C) for 5–7 minutes, stirring once. The edges will darken slightly, deepening the flavor and preventing that waxy aftertaste when mixed into the filling.
- Avoid Overstuffed Shells: Cannoli shells are delicate—packing them like a sausage will shatter them when you bite in. Use a piping bag with a large tip and fill shells no more than ¾ full. A gentle tap on the counter helps settle the filling without crushing the shell.
- Melt Butter Slowly: Dump butter into the ricotta mix while it’s still warm, and you’ll end up with a greasy, separated mess. Instead, melt the butter separately, then drizzle it into the ricotta-sugar mixture while whisking constantly. Heat the whole thing gently (no higher than 160°F/70°C) to emulsify—just until the sugar dissolves.
Best sauces and condiments for this dish
Classic Chocolate Ganache
The star of this recipe is the rich chocolate ganache, where 1 cup semisweet chocolate chips and 4 tbsp unsalted butter are melted together using the double boiler method. I always use Ghirardelli chocolate—its smooth texture makes all the difference.
After melting, whisk in ¼ cup heavy cream to create that signature velvety consistency. Let it cool slightly before mixing with the ricotta filling to avoid melting it prematurely.
Spiced Ricotta Twist
For a cozy flavor profile, fold ½ tsp ground cinnamon (or ¼ tsp nutmeg) into the ricotta mixture before combining with the ganache. This adds warmth that pairs beautifully with the chocolate.
If you prefer a more intense spice, try 1 tsp espresso powder—it deepens the chocolate flavor without overpowering it. The key is balancing sweetness and spice for that perfect harmony.
Creamy Whipped Cream Topping
For an extra-luxurious finish, pipe ½ cup whipped cream (whipped with 1 tbsp powdered sugar) over the filled cannoli right before serving. This adds a light, airy contrast to the dense chocolate filling.
I like to use a pastry bag with a star tip for an elegant presentation. For a modern twist, drizzle with melted white chocolate or chocolate syrup for extra decadence.
Citrus Zest Brightener
Brighten up the ganache by adding 1 tsp lemon or orange zest while it's still warm. This cuts through the richness and adds a refreshing note.
The zest dissolves into the ganache beautifully, enhancing the overall flavor without altering the texture. I find that orange zest works particularly well with dark chocolate.
Nutty Crunch Add-Ins
For texture lovers, fold ¼ cup chopped toasted hazelnuts or pecans into the ricotta mixture before combining with the ganache. The nuts add a delightful crunch that contrasts perfectly with the creamy filling.
Toast the nuts in a dry pan over medium heat for 3-4 minutes until fragrant, then chop finely. This step takes just 5 minutes but makes a huge difference in texture.
Boozy Ganache Upgrade
For adults-only desserts, stir 1 tbsp dark rum, Kahlúa, or Frangelico into the warm ganache. The alcohol cooks off slightly, leaving behind deep, complex flavors. I recommend Kahlúa—it enhances the chocolate without overpowering it.
Just be sure to let the ganache cool completely before filling the cannoli to prevent the shells from softening prematurely.
Nutrition facts
Frequently asked questions
Can I use store-bought cannoli shells instead of making them from scratch?
Store-bought shells save time and still deliver that perfect crispy texture. Look for pre-made cannoli tubes in the freezer section of Italian markets or specialty grocery stores. Just follow the package instructions for frying—usually 375°F for 15-20 seconds. Dust them with cocoa powder before filling for that authentic look.
Why did my cannoli shells turn out soggy?
Soggy shells usually mean one of two things: the oil wasn't hot enough (375°F is ideal) or the shells weren't cooled properly. Always fry in batches and let them cool completely on a wire rack before filling. Never stack them—this traps moisture and ruins the crunch. Keep them warm in a 200°F oven while you work on the filling.
How do I fix filling that's too thick or too thin?
If your filling is too thick, gently warm it for 10 seconds in the microwave and stir until smooth. Too thin? Chill it for 15 minutes or add 1 tablespoon of powdered sugar to thicken. The perfect consistency coats the back of a spoon but flows easily through a piping bag. For extra insurance, let the ganache cool slightly before mixing with the ricotta.
Can I make cannoli ahead of time?
Yes, but with a few key rules: store empty shells in an airtight container for up to 3 days and keep the filling refrigerated for 2 days. Fill them just before serving to maintain crispness. For longer storage, freeze filled cannoli (wrapped individually) for up to 1 month). Thaw at room temperature for 30 minutes before serving.
What's the best way to pipe the filling without making a mess?
Use a pastry bag with a large star tip and cut a tiny corner off the bag for smooth filling. Hold the cannoli shell at a slight angle and pipe the filling until it's just below the rim. Tap gently to settle the filling, then dust with powdered sugar. Practice on a plate first if you're new to piping—it gets easier with just a few shells!
