This post may contain affiliate links. Please see our disclosure policy.




  • 2 cups all-purpose flour
  • 1/8 teaspoon salt
  • 1 tablespoon granulated sugar
  • 1/2 cup butter or margarine
  • 1 egg, slightly beaten
  • 1/4 cup white wine
  • Vegetable oil
  • 1 cup ricotta cheese
  • 1 cup mascarpone cheese*
  • 3/4 cup sifted confectioners' sugar
  • 1 tablespoon amaretto (optional)
  • 3 (1 ounce) squares semisweet chocolate, grated and divided
  • 1/4 cup sifted confectioners' sugar


  1. Combine first 3 ingredients in a medium bowl. Cut in butter until mixture resembles coarse meal; stir in beaten egg. Gradually stir in wine, mixing well. Shape dough into a ball; cover and refrigerate 30 minutes.
  2. Turn dough out onto a lightly floured surface; roll dough to 1/16 inch thickness. Cut into 3 1/2-inch circles; roll circles into 5-inch ovals with a rolling pin. Place a cannoli form down the lengthwise center of oval, and roll dough around form. Moisten seam with water to seal.
  3. Pour oil to a depth of 3 inches into a Dutch oven; heat to 350 degrees F. Fry cannoli shells 1 minute or until golden brown. drain on paper towels, and cool about 5 seconds. Carefully remove cannoli form. Cool shells completely.
  4. Thoroughly drain ricotta cheese in a strainer, discarding liquid. Place ricotta cheese in container of an electric blender or food processor, and process until smooth.
  5. Combine ricotta, mascarpone cheese, 3/4 cup confectioners' sugar, and, if desired, amaretto in a medium mixing bowl; beat at medium speed of an electric mixer until light and fluffy. Fold in 2 grated squares of chocolate; chill 4 hours.
  6. Pipe or spoon filling into shells. Sprinkle shells with 1/4 cup confectioners' sugar and exposed filling with remaining grated chocolate.
  7. Serve immediately.

* As a substitute for mascarpone cheese, combine 2 (8 ounce) packages cream cheese, 1/3 cup sour cream, and 1/4 cup whipping cream; beat well. Use 1 cup mixture for cannoli, reserving remainder for other uses.