Homemade cannoli are crunchy and flaky with that classic cannoli chocolate chip filling.

There's nothing like biting into a fresh, crisp cannoli shell as the creamy ricotta filling oozes out into your mouth. But really great cannoli are hard to find outside of an Italian bakery, so I'm going to show you how to make your own delicious cannoli at home - including how to make perfect homemade cannoli shells and a classic sweet ricotta filling.
If you aren't sure about working with hot oil, I'm also going to show you how to make perfectly crispy shells in an air fryer too so you can make this delicious homemade cannoli recipe with or without deep frying!
Jump to:
Why You'll Love This Recipe
- Enjoy authentic Italian cannoli at home
- Make your crispy cannoli shells the traditional way or in an air fryer
- The filling recipe is easy to customize and make your own
Ingredients
- Flour - Use All-purpose flour for the right strength and structure for a solid shell.
- Sugar - Regular white sugar to for a touch of sweetness.
- Butter - Unsalted butter - room temperature.
- Egg - We'll use egg in the cannoli shells and also a little extra for an egg wash to hold the shells together on the cannoli tubes. In baking, Use large eggs and always free range if possible.
- Marsala Wine - Traditional Sicilian cannoli recipes use Marsala wine in the shells, but if you can't find it, you can substitute it with a little red wine, dry white wine, or red wine vinegar.
- Ricotta - Use high-quality, whole milk ricotta cheese. Strain your ricotta the night before making your cannoli filling. See the section below on how to do this.
- Powdered Sugar - The powdered sugar will dissolve into your ricotta cheese and add just the right amount of sweetness.
- Vanilla - adds sweetness and depth to the cannoli filling. Use a high-quality vanilla extract or vanilla bean paste.
- Cinnamon - A tiny hint of ground cinnamon gives the cannoli filling a little warmth, but the cinnamon flavor is not overpowering. You can leave it out if you prefer.
- Chocolate Chips - Mini chocolate chips are super cute, but any kind will do. I like to use dark chocolate chips, but milk chocolate chips will also work well.
- Vegetable Oil - If you are deep frying your cannoli shells in oil, use vegetable oil or another flavorless oil.
See the recipe card for quantities.
How to Make Cannoli Shells
- Combine flour, sugar, and salt in a large bowl.
- Cube the butter into small chunks, then add to the flour mixture. Mix until it resembles lumpy breadcrumbs. You can do this in a food processor, a stand mixer with the paddle attachment, or by rubbing the butter into the flour by hand
- Add the egg and marsala wine and mix together just until a rough dough forms. If it needs more liquid, add a little splash more of the marsala wine and keep mixing. Don't overmix.
- Once it comes together into a raggedy dough, tip the mixture out onto a lightly floured surface and knead until it is a nice smooth dough.
- Form into a disc and wrap in plastic wrap. Leave on the countertop to rest for 2 hours. If you want to prepare the cannoli dough in advance, you can make it the day before and leave it in the fridge overnight. Just bring it back down to room temperature before rolling it out. I have tested making this dough up to two days in advance with great results.
- Roll out the cannoli dough as thinly as possible. It is quite an elastic dough so this requires some patience and perseverance. If you have a pasta roller then that can make this process easier, but it will work just fine with a rolling pin and patience. Ideally, it should be thin enough that you can see your fingers through it.
- Cut the thinly rolled dough into rounds using a circular cookie cutter. The longer you want your cannoli shells to be, the larger you should cut your circles (but no longer than the cannoli forms). If unsure, about 4-inch circles should work nicely.
- Wrap the dough circles around the cannoli tubes very gently, with the shortest part of the tube being where the ends of the dough should meet with a slight overlap. Press firmly on the seam to prevent the dough from unraveling from the cannoli mold
- Repeat until all your cannoli forms are 'dressed'. You'll fry the cannoli in batches so you will be reusing the forms as we go.
To Deep Fry:
- Fill a saucepan with vegetable oil at least 4 inches deep. Heat the oil on medium-low heat to let it slowly come up to 350°F /180°C. Check the temperature regularly with a candy thermometer, you may have to regulate it to keep it at the right temperature as you fry. (You can preheat the oil while you are rolling out your cannoli dough to save time).
- Use a metal slotted spoon to carefully lower 2 or 3 cannoli shells into the hot oil - they should start bubbling up immediately.
- Cannoli shells cook very quickly so keep an eye on them - it will only take a minute or two on each side.
Tip: Because of their shape, the shells tend to bob to one side even if you try to flip them. You can use a pair of metal tongs to hold them on the resistant side for 30 seconds at a time, switching between the shells in the oil so they all get an even amount of cooking time. - Once the cannoli shells are golden brown on all sides, use the slotted spoon to remove them from the hot oil and transfer them to a wire rack lined with paper towels to soak up any excess oil. Leave them on the metal tubes for now while you fry the next batch.
- By the time you have fried the next batch, the first batch should be cool enough to slide them off of the metal tubes. Be very careful as the tubes will still be hot, and the shells are super fragile.
- Your fried shells should be golden brown, flaky and covered in those famous bubbles all over the shell - that's the sign of great cannoli!
To Air Fry:
- Brush your air fryer basket lightly with a little oil or spray with an oil-based nonstick spray and preheat to 400°F / 205°C. Adding a little oil is an essential step as the air fryer needs it to circulate the oil and fry the cannoli shells.
- It's best to fry the cannoli shells in small batches so that you can allow them plenty of space in the air fryer to crisp up nicely. Also, it means you can do a few at a time while letting some shells cool enough to remove from the tubes and keep the momentum going.
- Once the air fryer is preheated, place the first batch of cannoli shells into the basket, making sure they do not touch each other. Cook for 4-5 minutes or until the outside of each cannoli shell is golden brown. There is no need to flip the shells over halfway through.
- Once the cannoli shells are evenly golden brown, remove them from the air fryer and place them on a cooling rack lined with paper towels to remove any excess oil.
- Start air frying the next batch of shells. Once the second batch is cooked, the first batch should have cooled enough for you to carefully remove them from the cannoli tubes so you can reuse them with the remaining dough. Be careful removing the tubes as they will still be quite hot, and the cannoli shells may break easily.
Tip: Many sources will tell you to cover the bottom of your air fryer basket in aluminum foil - don't do this! It actually prevents the air fryer from being able to work the way it's supposed to, and you may end up with soggy cannoli shells
How to Make Cannoli Filling
This is a traditional cannoli filling that is made from ricotta and mixed with mini chocolate chips. It's a classic filling for a good reason, but you can fill your cannoli shells with whatever filling you like, or see the 'variations' section below for some filling inspiration.
If you don't want to make your own cannoli shells, this filling is also a great way to add some authentic flair to store-bought shells.
- Make sure the ricotta has been properly strained overnight (see the section below on how to strain ricotta).
- Add the ricotta, powdered sugar, cinnamon, and vanilla to a bowl and beat until smooth and well combined.
- Add the chocolate chips to the ricotta mixture and stir until evenly distributed.
- Put the ricotta filling in a piping bag and snip off the end (make sure the opening of the pastry bag is large enough for the chocolate chips to pass through easily). Pipe into the cooled cannoli shells right before serving.
- For extra crunch, dip the ends of the filled cannoli in some more chocolate chips.
- Serve immediately. If the cannoli are for later, fill them right before serving for the best crunchy texture.
How to Strain Ricotta Cheese
It's important to strain the fresh ricotta overnight to remove any excess liquid that might be in there. If you don't, then that liquid will seep out into your cannoli shells and make them soggy.
- Measure out your ricotta cheese and wrap it in a cheesecloth, squeezing it tightly.
- Place ricotta into a sieve over a medium bowl (while still wrapped in the cloth).
- Put a small plate on top of the ricotta and use something heavy to weigh it down. This will provide a little pressure overnight to drain those juices.
- Let the ricotta sit like this in the fridge overnight. Once you are ready to make the cannoli filling, discard the excess liquid in the bottom of the bowl and unwrap the ricotta from the cheesecloth.
Air Fried vs Deep Fried Cannoli Shells
Traditional fried cannoli are undeniably delicious - but how do air-fried cannoli compare? I won’t claim they’re identical, but I also wouldn’t be sharing this recipe if the air fryer version wasn’t impressive in its own right.
The most noticeable difference? The air fryer can’t create those signature cannoli bubbles, which are a hallmark of classic fried shells. But honestly, once dusted with powdered sugar, you won’t miss them—especially since they don’t impact flavor.
Texture-wise, air-fried shells are slightly crunchier, whereas fried ones have a crispier, more delicate bite. Still, both versions shatter beautifully when you take a bite, delivering that satisfying crunch.
Some desserts truly need deep frying for best results (like my Bavarian Cream Donuts), but these air-fryer cannoli are a fantastic alternative—crunchy, delicious, and totally worth trying if you’d rather skip the oil!
Variations
This homemade cannoli recipe uses a classic ricotta cannoli filling with mini chocolate chips, but you can mix this classic recipe up for many different flavors.
Pistachio Cannoli - Check out my pistachio cannoli recipe for a pistachio version of the filling.
Citrus Cannoli - Another classic twist is to add lemon zest or orange zest, and candied orange peel to the cannoli filling instead of chocolate chips.
Dipped Chocolate - For even more chocolatey goodness, try melting some chocolate and dipping the ends of the pastry shells in chocolate before filling.
Equipment
- Medium Saucepan or Pot - Or air fryer if you are air frying instead.
- Cannoli Tubes - I recommend using purpose-made metal cannoli forms as they are designed to withstand the frying heat without warping or causing marks at the joining point. You can order them online or in many specialty cooking stores.
- Rolling Pin - Or you can use a pasta machine.
- Sieve - or fine mesh strainer
- Thermometer - if you are deep frying the cannoli shells
Storage
It's best to fill the shells immediately before serving. But you can prepare the shells and the cannoli filling ahead of time.
You can store the unfilled shells in an airtight container for up to a week.
You can store the prepared cannoli filling in the fridge in an airtight container for 3 days.
I don't recommend trying to store filled cannoli as the shell will go soggy after a few hours.
More Pastry Recipes
Try some of these delicious pastry recipes:
Recipe
Homemade Cannoli
Equipment
- Round Cookie Cutter
- Rolling Pin or pasta maker
Ingredients
For the Cannoli Shells
- 1 ¾ cups All-purpose flour 250g
- 2 tablespoon White Sugar 25g
- ¼ teaspoon Salt
- 3 tablespoon Butter 43g (room temperature)
- 1 Large Egg
- ⅓ cup Marsala Wine 80ml
- Vegetable Oil (if deep frying)
For the Cannoli Filling
- 900 g Ricotta strained
- 1 ½ cups Powdered Sugar 195g
- ¼ teaspoon Ground Cinnamon
- 1tsp teaspoon Vanilla
- 1 cup Mini Chocolate Chips 170g
Instructions
- Strain the ricotta the night before and let it sit overnight.*
Make the Cannoli Shells
- Mix together the flour, sugar and salt in a large mixing bowl.1 ¾ cups All-purpose flour, 2 tablespoon White Sugar, ¼ teaspoon Salt
- Cube the butter into small chunks then add to the flour mixture. Mix until it resembles lumpy breadcrumbs. You can do this in a food processor, a stand mixer or by rubbing the butter into the flour by hand.3 tablespoon Butter
- Add the egg and marsala wine and mix together just until a rough dough forms. If it needs more liquid, add a little splash more of the marsala wine and keep mixing. Don't overmix.1 Large Egg, ⅓ cup Marsala Wine
- Once it comes together into a raggedy dough, tip the mixture out and finish off the dough by hand, kneading on a floured worksurface.
- Knead the dough until it looks smooth. Form into a round shape and wrap in plastic wrap. Leave on the countertop to rest for 2 hours.**
- Roll out the dough as thinly as possible. It is quite an elastic dough so this requires some patience and perseverance. If you have a pasta maker then that can make this process easier, but it will work just fine with a rolling pin and patience. Ideally, it should be thin enough that you can see your fingers through it.
- Cut the thinly rolled dough into rounds. The longer you want your cannoli shells to be the larger you should cut your circles (but no longer than the cannoli tubes).
- Wrap your dough circles around the cannoli tubes and seal with a little egg wash. Press firmly on the seam to prevent the cannoli shell from unraveling.
To Deep Fry
- Fill a saucepan with vegetable oil at least 4 inches deep. Heat the oil on medium-low heat to let it slowly come up to 350°F /180°C. Check the temperature regularly with a candy thermometer, you may have to regulate it to keep it at the right temperature as you fry. (You can preheat the oil while you are rolling out your cannoli dough to save time).Vegetable Oil
- Use a metal slotted spoon to carefully lower 2 or 3 cannoli shells into the hot oil - they should start bubbling up immediately.
- Cannoli shells cook very quickly so keep an eye on them - it will only take a minute or two on each side. Tip: Because of their shape, the shells tend to bob to one side even if you try to flip them. You can use a pair of metal tongs to hold them on the resistant side for 30 seconds at a time, switching between the shells in the oil so they all get an even amount of cooking time.
- Once the cannoli shells are golden brown on all sides, use the slotted spoon to remove them from the hot oil and transfer them to a wire rack lined with paper towels to soak up any excess oil. Leave them on the metal tubes for now while you fry the next batch.
- By the time you have fried the next batch, the first batch should be cool enough to slide them off of the metal tubes. Be very careful as the tubes will still be hot, and the shells are super fragile. Your fried shells should be golden brown, flaky and covered in those famous bubbles all over the shell - that's the sign of great cannoli!
To Air Fry
- Once the first lot of cannoli tubes are 'dressed' brush your air fryer basket lightly with a little oil and preheat to 400°F / 205°C.
- Once the air fryer is preheated - place the first batch of cannoli shells into the basket, making sure they do not touch each other. Cook for 4-5 minutes, or until golden brown. There is no need to flip the shells over halfway through.
- Once the cannoli shells are evenly golden brown, remove them from the air fryer and place on a cooling rack covered with paper towels.
- Start air frying the next batch of shells. Once the second batch are cooked, the first batch should have cooled enough for you to carefully remove them from the cannoli tubes so you can reuse them with the next lot of dough rounds.
Make the Cannoli Filling
- Add the ricotta, powdered sugar, cinnamon and vanilla to a bowl and beat until it is smooth and well combined.900 g Ricotta, 1 ½ cups Powdered Sugar, ¼ teaspoon Ground Cinnamon, 1tsp teaspoon Vanilla
- Add the chocolate chips and stir until evenly distributed.1 cup Mini Chocolate Chips
- Put the cannoli filling in a piping bag and snip off the end. Pipe into the cooled cannoli shells right before serving.
- For extra crunch, dip the ends of the cannoli shells in some more chocolate chips.
- Serve immediately. If the cannoli are for later, I recommend storing the shells and filling separately and filling them right before serving.
Notes
It really helps and I love hearing all your feedback!
Nutrition
FAQ
Yes! Though air-fryer cannoli won't have those famous cannoli 'bubbles' on the shells, they still have that delicious, crispy, flaky shell if you use the right recipe.
Fresh ricotta contains a lot of excess liquid. If you don't strain the ricotta overnight and remove the excess liquid, then it will seep out of your filling and into your cannoli shells - making them soggy.
Absolutely, cannoli shells made in the air fryer are still crispy and flaky and go beautifully with the classic cannoli filling.
Linda Sebek
I have read through this recipe several times, but I don’t see any pistachios listed in the ingredients or in the directions, but it says “creamy pistachio filling”. Please advise.
Chris Radwanski
Under step 2 of “Making Pistachio Cannoli Filling” it says “Add the pistachio paste and mix it through the cannoli filling” it recommends 2 tablespoons of Pistachio Paste. It further says in step 4 to add chopped pistachios for an extra crunch. I hope this helps 🙂
Jules
Hi Linda,
So sorry for the confusion and thank you for pointing this out! This was a typo as I use the same cannoli shell recipe for both these cannoli and my pistachio cannoli recipe. You can find the pistachio cannoli filling here - https://bonnibakery.com/pistachio-cannoli/
Thank you,
Jules
Andrea
I cannot wait to try these! I love cannolis but never try making them because of all the oil they take to fry, but being able to make them in an air fryer is a game changer (and probably a waist size changer lol)
Chris Radwanski
Admittedly, I thought cannoli was cannelloni for the longest time, and I'm ever so happy now that I know the difference. These were amazing and I have found a whole bunch of different foods that I hadn't tried in my life! Thanks for showing these to me, super enjoyable, please keep it up!
Jules
Aww that is the sweetest comment 🙂 <3