Cannelloni stuffed with shrimp, creamy ricotta, and spinach, baked in a rich sherry béchamel sauce. This seafood cannelloni recipe delivers restaurant-quality Italian comfort food with a coastal twist that's surprisingly easy to pull off at home.

Growing up, ricotta-stuffed pasta shells were reserved for special occasions like holidays or a very special Sunday dinner. Today, I'm bringing that same comfort food energy with a pescatarian upgrade: tender shrimp folded right into the creamy cheese filling, all blanketed in a velvety sherry white sauce.
As someone who cooks seafood almost daily here in Portugal, I've tested this recipe to make sure it works with standard grocery store ingredients and doesn't require any fancy techniques. If you can make a basic white sauce and stuff a pasta tube, you've got this.
Ingredients to make this recipe:

Before we get to the step by step directions, a few notes about the ingredients:
Oven-ready Cannelloni shells: If you can't find oven-ready cannelloni shells, use regular and par-cook them about 5 minutes, drain, and cool before stuffing. Or spring for jumbo shells for a classic dish.
Ricotta: whole milk ricotta is the very best option in this recipe.
Spinach: use frozen and thawed spinach (squeeze it well to remove excess water!) or fresh, steamed spinach.
Dry sherry (optional): the sherry is an optional ingredient in the creamy white sauce, but it adds so much flavor to the dish. Do everything you can to add it, but use white wine if you must. If you prefer cooking without alcohol, skip it altogether or follow America's Test Kitchen's advice on a making a flavorful, non-alcoholic substitution.
Full ingredient list and measurements included in the printable recipe card below.
Step by step instructions:
1. Make béchamel sauce
Melt butter in a saucepan, whisk in flour, and cook for 2 minutes. Add milk one cup at a time, whisking between additions. Season with salt, white pepper, sherry, and nutmeg. Simmer for 5-6 minutes until thickened, then stir in ½ cup Parmesan. The sauce should coat the back of a spoon.


2. Mix the filling
Combine chopped shrimp, squeezed-dry spinach, garlic, ricotta, mozzarella, Parmesan, basil, egg yolks, lemon zest, salt, and pepper. Mix thoroughly until everything is evenly distributed.


3. Stuff and assemble
Pour 1 cup béchamel into a buttered 9x13-inch baking dish. Fill each shell with ricotta mixture using a piping bag or zip top bag. Nestle shells in the dish, pour remaining sauce over top, and sprinkle with remaining Parmesan. It will look like too much sauce - trust it.


4. Bake
Cover with foil and bake at 375°F for 30 minutes. Remove foil, bake 10 minutes more, then broil 3-5 minutes for a golden-brown top. Let rest 10 minutes before serving.


Pro Tips for Perfect Cannelloni
- Don't skip squeezing the spinach. Frozen spinach holds a shocking amount of water. Squeeze it in a clean kitchen towel until your hands hurt. Wet filling = soggy cannelloni.
- The sauce looks like too much. Trust it. Oven-ready pasta needs that moisture to cook through and stay tender.
- Filling the shells: A piping bag makes this a 5-minute job instead of a 20-minute frustration. Even a zip top plastic bag works.
- Make ahead: Stuff the shells, cover with sauce, and refrigerate for up to 24 hours. Add 5-10 minutes to baking time if going straight from the fridge to oven.
Substitutions and Variations
- Other seafood: Swap half the shrimp for lump crab meat, chopped lobster, or even flaked cooked salmon. Keep the total at 1 pound.
- No sherry? Use dry white wine, or skip it entirely. The sauce will still be good, just less complex.
- Cheese swaps: Use fontina or Gruyère instead of mozzarella for a nuttier flavor. Pecorino Romano or Grana Padano works in place of Parmesan.
- Fresh spinach: Steam or sauté 2-3 cups fresh spinach until wilted, let cool, then chop and squeeze dry.
- Regular pasta shells: Par-cook jumbo shells or regular cannelloni for about 5 minutes (just shy of al dente), drain, cool, and stuff. Baking time stays the same.
Serving Suggestions
Serve this cannelloni with lemon wedges for squeezing - the brightness cuts through the richness beautifully. A simple arugula salad with lemon vinaigrette and some crusty bread for soaking up extra sauce rounds out the meal.
How Long Does This Keep?
- Storage: Cover tightly and refrigerate for up to 3 days. The pasta continues to absorb sauce, so leftovers won't be quite as saucy as day one (but they're still delicious).
- Reheating: Cover with foil and warm in a 350°F oven for 15-20 minutes, or microwave individual portions for 2-3 minutes.
- Freezing: You can freeze baked cannelloni for up to a month. Thaw in the fridge overnight before reheating. The texture won't be quite as silky as fresh, but it's a solid meal-prep option.
Can I Make This Without Seafood?
Absolutely. This ricotta filling works beautifully on its own as a vegetarian option—just leave out the shrimp and add an extra ⅓ cup ricotta. You could also use this filling for lasagna, stuffed shells, or homemade ravioli.
Can I Use Whole Eggs Instead of Egg Yolks?
Yes, use 1 whole egg in place of 2 egg yolks. The filling will be slightly less rich but still delicious and will bind just fine during baking.
Why Is My Béchamel Lumpy?
Usually this happens from adding milk too quickly or not whisking enough. If you end up with lumps, pour the sauce through a fine-mesh strainer before using. For next time: add milk gradually and whisk constantly, especially in the first minute after each addition.
Conclusion
This is the kind of dish that makes people think you spent all day in the kitchen when really, most of it is just assembly. The shrimp-packed filling stays moist and flavorful, the sauce stays creamy, and that golden Parmesan crust on top? Always a crowd-pleaser.
Print
Shrimp Cannelloni Recipe
- Total Time: 1 hour 5 minutes
- Yield: 6-8 1x
Description
Tender cannelloni shells stuffed with shrimp, ricotta, spinach, and fresh herbs, baked in a creamy Parmesan béchamel sauce. This seafood cannelloni is rich, comforting, and easier than it looks.
Ingredients
For the filling:
1 lb cooked shrimp, chopped
⅔ cup frozen spinach, thawed and squeezed dry
3 garlic cloves, minced
1 lb whole milk ricotta
⅔ cup mozzarella, grated
½ cup Parmesan, grated
¼ cup fresh basil, julienned, plus more for garnish
2 egg yolks
Zest of 1 lemon, plus wedges for serving
1 teaspoon kosher salt
½ teaspoon black pepper
For the sauce:
4 tablespoons butter
5 tablespoons all purpose flour
1 large garlic clove, lightly crushed
4 cups whole milk
3 tablespoon dry sherry (optional)
1 teaspoon kosher salt, divided
¼ teaspoon white pepper
¼ teaspoon ground nutmeg
½ cup Parmesan, grated
For the pasta:
20-24 cannelloni shells, oven-ready
Instructions
- Preheat oven to 375°F. Butter a 9x13-inch baking dish.
- Make the béchamel: Melt butter in a saucepan over medium heat. Whisk in flour and cook for 2 minutes without browning. Add milk one cup at a time, whisking between additions until smooth. Season with salt, white pepper, nutmeg, and sherry. Bring to a gentle simmer and cook for 5-6 minutes until thickened enough to coat the back of a spoon. Stir in ½ cup Parmesan. Taste and adjust seasoning. Remove from heat.
- Make the filling: In a large bowl, combine chopped shrimp, spinach (squeezed very dry), garlic, ricotta, mozzarella, Parmesan, basil, egg yolks, lemon zest, salt, and pepper. Mix thoroughly until well combined.
- Assemble: Pour 1 cup béchamel into the prepared baking dish, spreading evenly across the bottom. Fill each cannelloni shell with ricotta filling using a piping bag or small spoon, and nestle filled shells side by side in the dish. Pour remaining sauce over shells. It will look like a lot of sauce, but the pasta absorbs it during baking. Sprinkle with remaining ½ cup Parmesan.
- Bake: Cover tightly with foil and bake for 30 minutes. Remove foil and bake 10 minutes more. Switch oven to broil and cook for 3-5 minutes until top is golden brown and bubbling.
- Rest and serve: Let dish rest for 10 minutes before serving. This allows the sauce to thicken and makes plating easier. Garnish with fresh basil leaves and serve with lemon wedges.
Notes
- Oven-ready pasta cooking times vary by brand. Check shells for tenderness at 30 minutes. If they're not quite tender, cover and bake another 5 minutes before the final uncovered bake and broil.
- Squeeze spinach thoroughly in a kitchen towel to remove all excess water, or filling will be watery.
- Make ahead: Assemble completely, cover, and refrigerate up to 24 hours before baking. Add 5-10 minutes to covered baking time if starting from cold.
- For regular cannelloni shells: Par-cook for 5 minutes in boiling water, drain, cool slightly, then stuff as directed.
- Substitute 1 whole egg for the 2 egg yolks if needed. The filling will be slightly less rich but still delicious.
- Prep Time: 20
- Cook Time: 45
- Category: Easy Recipes
- Method: Oven and Stove Top
- Cuisine: Italian, American







Shannan
Hi! Going to make this for our weekend Christmas party! Can I use cooked jumbo shells instead?? I can’t find cannelloni noodles anywhere and I only have two days.
Christina Jolam
Absolutely! Stuffed shells would be delicious with this filling and the creamy shrimp sauce. Enjoy and Merry Christmas Party Weekend 😉
Edward
Excellent! That sherry sauce is heavenly. Made it over the holidays and it was a big hit.
Christina Jolam
Great to hear, Edward! So glad you loved it. And I appreciate you coming back to leave a comment. Hope your year is off to a great start!
Heidi
The only no bake pasta I can find is lasagna noodles. Should I make any modifications to the recipe?
Christina Jolam
Hi, Heidi! First, you can use regular cannelloni or giant shells and simply par-cook them (just short of the time required for al dente), then cool slightly and stuff with the filling and follow the recipe from there. I haven't tested this recipe as a lasagna, so I'm hesitant to wing it if this is for a big day! But if it were me, I would double the ricotta spinach filling (since you'll need it for at least 2 layers of a casserole dish). Depending on the size of your dish, you may need additional sauce, as well. Hope you can find shells or cannelloni to make it easier for you! 😉