Rugelach
40
cookies
Dessert
Course
Print Recipe
Ingredients
Directions
Ingredients
1 c
European-style unsalted butter
Jump
½ c
plus 2 tablespoons cream cheese
Jump
1 ½ c
all-purpose flour
Jump
½ tsp
Diamond Crystal kosher salt
Jump
½ c
room-temperature water
Jump
4 tbsp
turbinado or coarse sanding sugar
Jump
Walnut Filling
c
chopped walnuts
Jump
¼ c
packed brown sugar
Jump
¾ tsp
Diamond Crystal kosher salt
Jump
½ tsp
ground cinnamon
Jump
Chocolate Filling
½ c
mini semisweet chocolate chips
Jump
Apricot Filling
1 c
chopped, dried apricots
Jump

You’ve got the option of three different fillings here: tart apricot, a salty-sweet walnut filling, and a rich chocolate one. If you want to make two flavors, halve the ingredients for each filling. These are the crumbly rugelach made with cream cheese dough, which are different than the yeasty Israeli variety.

Directions

  1. Remove the butter and cream cheese from the refrigerator about 15 minutes before making the dough to soften. In a medium bowl, whisk together the flour and the salt. Set aside.
  2. Cut the butter into large chunks and add to the bowl of a stand mixer fitted with the paddle attachment (or to a large bowl, if using a handheld mixer), and beat the butter on high speed for 1 minute until creamy. Scrape down the sides and bottom of the bowl with a rubber spatula, add the cream cheese, and continue beating until thoroughly combined.
  3. Scrape down the bowl again. With the mixer on medium- low speed, add the flour mixture and mix until a soft dough comes together into one big, rough piece.
  4. Stretch out a large piece of plastic wrap on your counter. Gather the dough into one ball with your spatula and place in the center of the plastic wrap. Tightly wrap and then form into a rectangle roughly 6 by 5 in [15 by 12 cm].
  5. Refrigerate until firm, at least 2 hours or up to 24 hours. (At this point, the dough can be placed in airtight container or resealable plastic bag and frozen for up to 2 months.)
  6. Remove the dough from the refrigerator and cut into four equal pieces. Work with one piece at a time, keeping the remaining pieces in the refrigerator, wrapped in plastic, until ready to use. Flour the piece of dough well and flatten with your hands to warm up the edges slightly and prevent them from cracking.
  7. On a well floured work surface, using a floured rolling pin, roll out the dough into a rectangle roughly 9 by 12 in [23 by 30.5 cm]. The dough should be thin and nearly translucent. Transfer the dough to a sheet of parchment paper, place on a baking sheet or large platter, and refrigerate.
  8. Repeat the process to roll out the remaining dough, laying each rectangle on a sheet of parchment paper and stacking the sheets on the baking sheet in the refrigerator.
  9. Arrange the first rectangle of dough with its parchment paper on your work surface with a long side near you. Trim both long sides of the dough to achieve straight edges. Fill with walnut, chocolate, or apricot filling as in the following instructions.
  10. Brush water on the border of the dough to help it seal. Roll up the dough very tightly into a log, moving from the long side closest to you to the side farthest away, and ending with the seam tucked underneath the log. Brush the log with some of the water, and sprinkle the entire log liberally with 1 Tbsp of the turbinado sugar.
  11. Transfer the log and the parchment paper onto another baking sheet and place the pan in the freezer. Repeat the process with the three remaining sheets of dough, stacking them on top of one another in the freezer.
  12. Line a baking sheet with parchment paper.
  13. Remove the first log you rolled from the freezer and trim the ends to expose an evenly filled spiral. Slice the log with a sharp knife at 1 in [2.5 cm] intervals. Transfer the slices to the prepared baking sheet, spacing them about 1 in [2.5 cm] apart. Continue with the remaining logs in the freezer until all the cookies have been trimmed, sliced, and arranged on the baking sheet. Freeze the entire pan of cookies for 1 hour. (After the cookies have completely frozen, they can be stored in airtight container in the freezer for up to 2 months.)
  14. Preheat the oven to 350°F [180°C]. Place the baking sheet with the still-frozen cookies in the oven and bake for 25 to 30 minutes, rotating halfway through for even browning. Transfer the cookies to a wire rack to cool. The cookies will keep in an airtight container at room temperature for up to 1 week.
Walnut Filling
  1. Place 1¼ cups [150 g] of chopped walnuts on a baking sheet and toast for about 12 minutes, until fragrant and glossy. Grind the walnuts in a food processor until they are as fine as granulated sugar. Mix the ground walnuts with ¼ cup [50 g] packed golden brown sugar, ¾ tsp Diamond Crystal kosher salt, and ½ tsp ground cinnamon. You should have about 2 cups [200 g] of filling. (The filling will keep in an airtight container in the refrigerator for up to 1 week, or in the freezer for up to 1 year.)
  2. To make the rugelach, follow the previous instructions, but when you are ready to fill the dough, brush the surface of the rectangle with water. Spread out ½ cup [50 g] of the filling evenly over the dough, leaving about a ½ in [12 mm] border along the long side farthest away from you. Roll and sprinkle with sugar, as described previously.
  3. Repeat with the remaining dough and filling, and proceed with the recipe.
Chocolate Filling
  1. To make the rugelach, follow the previous instructions, but when you are ready to fill the dough, brush the surface of the rectangle with water. Spread out ½ cup [90 g] of mini semisweet chocolate chips evenly over the dough, leaving about a ½ in [12 mm] border along the long side farthest away from you. Roll and sprinkle with sugar as described previously.
  2. Repeat with the remaining dough, spreading out ½ cup [90 g] of chocolate chips each time, and proceed with the recipe.
Apricot Filling
  1. In a small saucepan, combine 1 cup [160 g] of chopped, dried apricots and ¾ cup [180 ml] of water. Bring to a boil over medium heat, cover, and turn down the heat to low. Simmer for about 5 minutes, stirring occasionally, until all of the water has been absorbed and the apricots are soft. Transfer to a food processor and add ¼ cup [60 ml] of water. Blend until a smooth, thick paste is achieved. You should have 1 cup [240 ml] of filling. Refrigerate until ready to use.
  2. To make the rugelach, spread ¼ cup [60 ml] of the apricot filling evenly over one rectangle of dough with a rubber spatula, leaving about a ½ in [12 mm] border along the long side farthest away from you. Roll and sprinkle with sugar as described previously.

Reprinted from Eat Something by Evan Bloom with permission by Chronicle Books, 2020

[email_signup id="3"]
<div class="email-subscribe exp-subscribe subscribe"> <div class="alert alert-success exp-success ga-etembed-success" style="display:none;"> Great! You've signed up successfully! </div> <div class="alert alert-danger exp-error" style="display:none;"> We are experiencing an error, please try again. </div> <form name="subscribe" id="email-signup" class="email-signup-form" action="https://tastecooking.com/wp-admin/admin-ajax.php" method="POST" target="_top" data-event-assigned="false"> <fieldset class="form-group form-inline email-submit-group"> <label for="email-address" class="sr-only">Email Address</label> <input id="email-newsletter" type="email" placeholder="your@email.com" class="email-newsletter text email form-control" name="email" value=""> <button type="submit" value="Subscribe" name="subscribe" class="btn btn-primary email-submit-btn ga-etembed-success"> <i class="fa fa-envelope"></i> Subscribe </button> </fieldset> <small class="exp-small terms" style=""> By clicking Subscribe, I acknowledge that I have read and agree to the Penguin Random House <a href="http://www.penguinrandomhouse.com/privacy/" target="_blank">Privacy Policy</a> and <a href="http://www.penguinrandomhouse.com/terms/" target="_blank">Terms of Use</a> and agree to receive news and updates from TASTE and Penguin Random House. </small> <fieldset class="field-group checkboxes" style="display:none"> <div class="checkbox"> <label> <input type="checkbox" name="programs[]" value="505,50501,1" class="exp-checkbox" checked="checked"> <span><strong>Tastebook General</strong></span> </label> </div> <div class="checkbox"> <label> <input type="checkbox" name="programs[]" value="505,50502,1" class="exp-checkbox" checked="checked"> <span><strong>Tastebook Promo</strong></span> </label> </div> </fieldset><!-- /.checkboxes --> <input type="hidden" name="data_acq_code" value="TASTE_POPUP_STATIC_ONGOING" /> <input type="hidden" name="data_programs" value="50501|505,50502|505" /> <input type="hidden" name="form_id" value="3" /> <input type="hidden" name="partner" value="" /> <input type="hidden" name="action" value="crown_email_signup_submit" /> <input type="hidden" name="ref_url" value="" /> </form> </div> <script> jQuery(document).ready(function () { var unassigned_forms; setInterval( function() { //Check for unassigned forms var forms = jQuery( '.email-signup-form' ); unassigned_forms = false; forms.each( function( index ) { if ( jQuery( this ).attr( 'data-event-assigned' ) === 'false' ) { unassigned_forms = true; } }); if ( unassigned_forms ) { forms.off( 'submit' ).on( 'submit', function ( e ) { forms.attr( 'data-event-assigned', 'true' ); e.preventDefault(); // Basic email validation var email = jQuery(e.target).find('.email-newsletter').val(), valid_email = false, groupEl = jQuery(e.target).closest('.email-subscribe'); if ( !!email && typeof(email) === "string" ) { var email_array = email.split('@'); if ( email_array.length === 2 ) { if ( email_array[1].split('.').length > 1 ) { valid_email = true; } } } if ( valid_email ) { jQuery('.alert-danger').hide(); // Show loading gif groupEl.find('.email-signup-form').hide(); groupEl.find('.email-submit-loading').show(); // Populate ref_url jQuery(this).find('input[name="ref_url"]').val(window.location.href); // Generate Payload var payload = jQuery(this).serializeArray(); jQuery.ajax({ url: jQuery(this).attr('action'), type: 'POST', data: payload, success: function (data) { // Hide loading spinner groupEl.find('.email-signup-form').show(); groupEl.find('.email-submit-loading').hide(); // Display success msg var target = jQuery(e.target); jQuery(e.target).hide(); jQuery(e.target).parent().find('.alert-success').show(); jQuery(e.target).parent().find('#downloadbtn').show(); }, fail: function (err) { // Hide loading spinner groupEl.find('.email-signup-form').show(); groupEl.find('.email-submit-loading').hide(); // Display failure msg var target = jQuery(e.target); jQuery(e.target).hide(); jQuery(e.target).parent().find('.alert-danger').show(); } }); } else { groupEl.find('.alert-danger').html('Please enter a valid email address.').show(); } }); forms.off( 'keypress' ).on( 'keypress', function ( e ) { if ( e.which === 13 ) { e.preventDefault(); jQuery( this ).submit(); } }); } }, 100); }); </script>
[email_signup id="3"]
<div class="email-subscribe exp-subscribe subscribe"> <div class="alert alert-success exp-success ga-etembed-success" style="display:none;"> Great! You've signed up successfully! </div> <div class="alert alert-danger exp-error" style="display:none;"> We are experiencing an error, please try again. </div> <form name="subscribe" id="email-signup" class="email-signup-form" action="https://tastecooking.com/wp-admin/admin-ajax.php" method="POST" target="_top" data-event-assigned="false"> <fieldset class="form-group form-inline email-submit-group"> <label for="email-address" class="sr-only">Email Address</label> <input id="email-newsletter" type="email" placeholder="your@email.com" class="email-newsletter text email form-control" name="email" value=""> <button type="submit" value="Subscribe" name="subscribe" class="btn btn-primary email-submit-btn ga-etembed-success"> <i class="fa fa-envelope"></i> Subscribe </button> </fieldset> <small class="exp-small terms" style=""> By clicking Subscribe, I acknowledge that I have read and agree to the Penguin Random House <a href="http://www.penguinrandomhouse.com/privacy/" target="_blank">Privacy Policy</a> and <a href="http://www.penguinrandomhouse.com/terms/" target="_blank">Terms of Use</a> and agree to receive news and updates from TASTE and Penguin Random House. </small> <fieldset class="field-group checkboxes" style="display:none"> <div class="checkbox"> <label> <input type="checkbox" name="programs[]" value="505,50501,1" class="exp-checkbox" checked="checked"> <span><strong>Tastebook General</strong></span> </label> </div> <div class="checkbox"> <label> <input type="checkbox" name="programs[]" value="505,50502,1" class="exp-checkbox" checked="checked"> <span><strong>Tastebook Promo</strong></span> </label> </div> </fieldset><!-- /.checkboxes --> <input type="hidden" name="data_acq_code" value="TASTE_POPUP_STATIC_ONGOING" /> <input type="hidden" name="data_programs" value="50501|505,50502|505" /> <input type="hidden" name="form_id" value="3" /> <input type="hidden" name="partner" value="" /> <input type="hidden" name="action" value="crown_email_signup_submit" /> <input type="hidden" name="ref_url" value="" /> </form> </div> <script> jQuery(document).ready(function () { var unassigned_forms; setInterval( function() { //Check for unassigned forms var forms = jQuery( '.email-signup-form' ); unassigned_forms = false; forms.each( function( index ) { if ( jQuery( this ).attr( 'data-event-assigned' ) === 'false' ) { unassigned_forms = true; } }); if ( unassigned_forms ) { forms.off( 'submit' ).on( 'submit', function ( e ) { forms.attr( 'data-event-assigned', 'true' ); e.preventDefault(); // Basic email validation var email = jQuery(e.target).find('.email-newsletter').val(), valid_email = false, groupEl = jQuery(e.target).closest('.email-subscribe'); if ( !!email && typeof(email) === "string" ) { var email_array = email.split('@'); if ( email_array.length === 2 ) { if ( email_array[1].split('.').length > 1 ) { valid_email = true; } } } if ( valid_email ) { jQuery('.alert-danger').hide(); // Show loading gif groupEl.find('.email-signup-form').hide(); groupEl.find('.email-submit-loading').show(); // Populate ref_url jQuery(this).find('input[name="ref_url"]').val(window.location.href); // Generate Payload var payload = jQuery(this).serializeArray(); jQuery.ajax({ url: jQuery(this).attr('action'), type: 'POST', data: payload, success: function (data) { // Hide loading spinner groupEl.find('.email-signup-form').show(); groupEl.find('.email-submit-loading').hide(); // Display success msg var target = jQuery(e.target); jQuery(e.target).hide(); jQuery(e.target).parent().find('.alert-success').show(); jQuery(e.target).parent().find('#downloadbtn').show(); }, fail: function (err) { // Hide loading spinner groupEl.find('.email-signup-form').show(); groupEl.find('.email-submit-loading').hide(); // Display failure msg var target = jQuery(e.target); jQuery(e.target).hide(); jQuery(e.target).parent().find('.alert-danger').show(); } }); } else { groupEl.find('.alert-danger').html('Please enter a valid email address.').show(); } }); forms.off( 'keypress' ).on( 'keypress', function ( e ) { if ( e.which === 13 ) { e.preventDefault(); jQuery( this ).submit(); } }); } }, 100); }); </script>