A refined Mediterranean seafood pasta that elevates humble red mullet into something truly special—the fish is seared until crisp-skinned and saucy, the bones are roasted into a concentrated broth that becomes the pasta's cooking liquid, toasted almonds add buttery crunch, and fresh wild fennel brings an anise-scented brightness that ties every bite together in a deeply savory, complex whole.
| Amount | Ingredient |
|---|---|
| 8 oz (225 g) | Spaghetti, or linguine or bucatini |
| 1 oz (30 g) | Blanched almonds (about ¼ cup) |
| 2 oz (55 g) | Fresh wild fennel fronds (about 1½ cups loosely packed), or substitute fennel fronds from a fennel bulb plus a pinch of fennel seeds |
| 1 | Garlic clove, peeled and lightly crushed |
| ⅓ cup (75 ml) | Dry white wine, such as Pinot Grigio or Vermentino |
| Finely grated zest of 1 lemon | |
| 3 tbsp (45 ml) | Extra-virgin olive oil, plus more for finishing |
| Fine sea salt | |
| Freshly ground black pepper |
There is no fish quite like red mullet for this sort of treatment. Its delicate, sweet flesh is prized across the Mediterranean, but here in America it is tragically underappreciated—often overlooked in favor of sea bass or snapper. The secret to this dish lies in wasting nothing: the fillets are quickly seared and set aside as the finishing sauce, while the bones and heads are dry-roasted until deeply fragrant, then simmered into a concentrated fish broth that forms the backbone of the entire pasta. The broth is then used to finish cooking the spaghetti, infusing every strand with a briny, almost smoky marine depth that no bottled clam juice can replicate. Toasted almonds provide a nutty counterpoint and a pleasant crunch, while fresh wild fennel—the feathery, herbaceous fronds, not the bulb—adds a subtle licorice note that works beautifully with both the fish and the toasted nuts. Finished with a hit of lemon zest and a final drizzle of good olive oil, this is a pasta that tastes like the Sicilian coast in a bowl: sunny, saline, and deeply satisfying.
Inactive time includes roasting the bones and simmering the broth. The broth can be made a day ahead and refrigerated.
For the red mullet, ask your fishmonger to scale and gut the fish but leave the heads and bones attached. If red mullet is unavailable, use small whole snapper, sea bass, or 4 oz (115 g) of boneless, skin-on snapper fillets (ask for the bones on the side for the broth). Wild fennel fronds (finocchietto selvatico) can be found at farmers' markets in spring and summer or at well-stocked Italian grocers; fennel fronds from a fennel bulb make an excellent substitute. The bones must be roasted until completely dry and fragrant — this step cannot be skipped, as it is the cornerstone of the dish's flavor.
Rinse the whole red mullet under cold running water and pat dry thoroughly with paper towels. Using a sharp chef's knife, cut off the heads just behind the gills and set them aside with the bones. Using a filleting knife or a flexible boning knife, run the blade along the backbone from head to tail to remove each fillet, keeping the skin on. Run your fingertip along the center of each fillet to locate any pin bones and remove them with kitchen tweezers or needle-nose pliers. You should have 2 to 4 fillets (about 3½ oz / 100 g total). Set the fillets aside on a plate, covered, in the refrigerator.
The bones and heads are the most important part of this recipe — do not discard them. If your fishmonger will clean the fish for you, ask them to save the heads and bones separately and bag them together.
Preheat the oven to 350°F (175°C) with a rack in the center position. Line a rimmed baking sheet with parchment paper or aluminum foil.
Arrange the mullet bones and heads in a single layer on the prepared baking sheet. Drizzle lightly with olive oil and season with a pinch of salt. Roast for 15 to 20 minutes, turning once halfway through, until the bones are dry, golden-brown, and deeply fragrant — they should smell like toasted seafood, not raw fish. Do not rush this step. The dry heat concentrates the flavor of the bones and drives off moisture, producing a broth that is intensely savory rather than muddy or fishy. If the bones are still wet or steaming in the oven, they need more time.
While the bones roast, place the blanched almonds in a small dry skillet over medium heat. Toast, shaking the pan frequently, until the almonds are fragrant and golden in spots, 3 to 5 minutes. Immediately transfer to a cutting board to cool. Once cool, slice the almonds lengthwise into thin slivers. Set aside.
Transfer the roasted bones and heads to a medium saucepan. Pour in 4 cups of cold water — the bones should be just covered. Place the saucepan over high heat and bring to a boil, then reduce to a gentle simmer (small bubbles, not a rolling boil).
Simmer for 20 minutes, skimming any foam or impurities that rise to the surface with a spoon, until the broth has reduced by about three-quarters and is deeply fragrant. The water should barely shiver — a hard boil will make the broth cloudy and bitter. You want a clean, clear, intense fish essence, not a muddy stock.
Strain the broth through a fine-mesh strainer lined with cheesecloth (or a very fine sieve) into a large bowl, pressing gently on the bones with the back of a spoon to extract every last drop of liquid. Discard the solids. You should have about 1 cup (240 ml) of concentrated fish broth. Set aside.
If making ahead, cool the broth completely, transfer to an airtight container, and refrigerate for up to 2 days, or freeze for up to 1 month.
Remove the mullet fillets from the refrigerator. Pat them dry once more with paper towels and season generously on both sides with salt and freshly ground black pepper. Cut each fillet crosswise into ½-inch (1 cm) dice.
Set a large skillet over high heat. Add 3 tablespoons of olive oil and heat until shimmering. Add the crushed garlic clove and cook, swirling, for 30 seconds until fragrant but not browned.
Add the diced mullet in a single layer and sear without moving for 2 minutes, until the underside is golden and crisp. Toss the pieces and cook for 1 minute more — the fish should be just cooked through and still tender, not dry and flaky.
Remove and discard the garlic clove. Pour in the ⅓ cup of white wine and let it bubble, scraping up any browned bits from the bottom of the pan with a wooden spoon, until the wine has reduced by half, about 1 minute. Season with a pinch of salt and a grind of black pepper. Remove the pan from the heat and set aside.
Bring a large pot of generously salted water (about 1½ tablespoons kosher salt per 4 quarts of water) to a rolling boil over high heat.
Add the spaghetti and cook for 2 minutes less than the package directions indicate for al dente. The pasta will finish cooking in the fish broth, so undercooking it now ensures it doesn't turn mushy.
While the pasta cooks, return the skillet with the seared mullet and wine sauce to medium-low heat and add the reserved fish broth. Stir to combine and bring to a gentle simmer.
Using a spider skimmer or tongs, transfer the undercooked spaghetti directly from the pasta pot into the skillet with the mullet and broth. (Reserve about 1 cup of pasta water before draining.) Increase the heat to medium-high and toss the pasta vigorously, adding splashes of reserved pasta water as needed — about ¼ cup at a time — until the spaghetti is al dente and the sauce has thickened and coats each strand, 2 to 3 minutes. The pasta should be glossy and saucy, not dry or soupy. The broth should have reduced and emulsified with the olive oil and wine into a light, clinging sauce.
Remove the skillet from the heat. Add half of the fresh wild fennel fronds and toss gently to incorporate — the residual heat will wilt them just slightly while keeping their bright, herbaceous flavor.
Divide the pasta among 4 warmed shallow bowls, using tongs to twirl each portion into a neat nest. Spoon the seared mullet pieces and any remaining sauce evenly over the top.
Garnish each bowl with the remaining wild fennel fronds, the toasted almond slivers, and a generous grating of fresh lemon zest. Drizzle with a finishing splash of good extra-virgin olive oil and serve immediately.
This dish waits for no one — the fennel loses its brightness, the almonds their crunch, and the pasta its perfectly sauced texture within minutes. Serve the moment the final garnish hits the plate.
| Mistake | Why It Hurts | The Fix |
|---|---|---|
| Using boneless fish fillets only | You lose the bones — and with them, the most flavorful component of the dish | Always buy whole fish and save the bones and heads for the broth; ask your fishmonger to scale and gut the fish but leave everything else intact |
| Skipping the bone-roasting step | The broth will taste flat, weakly fishy, and watery — like tired fish soup instead of a concentrated essence | Roast the bones at 350°F (175°C) for a full 15–20 minutes until dry, golden, and deeply fragrant |
| Boiling the broth instead of simmering | Cloudy, bitter, and greasy — a hard boil emulsifies fish fats into the liquid and extracts harsh flavors | Keep the water at a bare shimmer; the surface should tremble but not break into bubbles |
| Overcooking the mullet | Dry, mealy, flavorless fish that disintegrates into the sauce | Sear for exactly 2 minutes on one side, then 1 minute after tossing — the residual heat from the wine deglazing finishes the cooking |
| Adding the fennel at the wrong time | Added too early, the fennel wilts into a dark, slimy mess; added too late, it remains harsh and raw | Toss half the fennel off the heat just before serving (the residual heat wilts it gently), and use the remaining half as a fresh garnish |
| Using too much pasta water | A thin, watery sauce that pools at the bottom of the bowl instead of coating the pasta | Add pasta water ¼ cup at a time, tossing vigorously — stop when the sauce is glossy and coats each strand, not when it looks soupy |
| Toasting almonds too dark | Burnt-tasting, bitter almonds that overpower the delicate fish and fennel | Toast until just golden and fragrant — about 3 to 5 minutes — and remove from the pan immediately, as they continue to darken off the heat |
| Variation | How To |
|---|---|
| Substitute Other White Fish | Use small whole snapper, sea bass, porgy, or branzino in place of red mullet. The flavor will be slightly different but equally delicious. Avoid oily fish like mackerel or bluefish — their bones produce a broth that is too strong and greasy. |
| Use Clams Instead of Fish | Omit the fish broth entirely. Cook the spaghetti in salted water until al dente. Meanwhile, steam 1 lb (450 g) of littleneck clams in ½ cup of white wine until they open, then toss the pasta with the clams, their juices, toasted almonds, and fennel. The briny clam liquor stands in beautifully for the fish broth. |
| Add a Pinch of Saffron | Steep a generous pinch of saffron threads in 2 tablespoons of hot fish broth for 5 minutes before adding it to the skillet. The saffron adds a subtle floral note and a gorgeous golden hue that complements the white wine and olive oil. This is a popular variation along the Ligurian coast. |
| Gochugaru Heat | Add 1 teaspoon of Korean gochugaru (coarse red pepper flakes) to the olive oil with the garlic. The mild, fruity heat adds complexity without overwhelming the fish. Regular red pepper flakes can be substituted — use just ½ teaspoon, as they are hotter. |
| Nut-Free Version | Replace the almonds with pine nuts or toasted breadcrumbs (panko, toasted in olive oil until golden). Pine nuts offer a similar buttery richness; breadcrumbs add a satisfying crunch without nuts. |
| Gluten-Free | Substitute the spaghetti with a good-quality gluten-free spaghetti (such as one made from rice and corn). Cook 1 minute less than package directions and finish in the broth as directed. Ensure your gluten-free pasta has enough starch to emulsify the sauce — if it seems thin, add an extra splash of pasta water. |
| Extra-Herby | Add 2 tablespoons of finely chopped fresh flat-leaf parsley and 1 tablespoon of fresh mint along with the fennel at the end. The parsley adds freshness, while the mint echoes and amplifies the anise notes of the fennel. |
| Method | Details |
|---|---|
| Refrigerator | Store in an airtight container for up to 1 day. The fish and almonds will lose their texture upon reheating, but the flavors remain excellent. |
| Reheating | Reheat gently in a skillet over medium-low heat with a splash of water or fish broth, tossing until just warmed through (2 to 3 minutes). Do not microwave — it will overcook the fish and turn the almonds rubbery. Refresh with a drizzle of olive oil and a new sprinkle of fresh fennel fronds and lemon zest before serving. |
| Freezing | Not recommended — the delicate fish texture and the almond crunch degrade significantly upon thawing. The dish is best enjoyed fresh, and leftovers should be eaten within 24 hours. |
| Fish Broth (make ahead) | The broth can be made up to 2 days ahead and refrigerated, or frozen for up to 1 month. Cool completely before storing. The broth also makes an excellent base for a fish soup or risotto — double the recipe and freeze half. |
| Leftover Fennel Fronds | Use remaining wild fennel in a simple salad with orange segments, red onion, and olive oil, or steep it in hot water for a fragrant herbal tea. |
| Wine | Why |
|---|---|
| Vermentino di Sardegna (Sardinia) | The quintessential Mediterranean seafood white — bone-dry, crisp, with notes of green apple, citrus, almond, and sea salt. The inherent almond note is a direct echo of the toasted almonds in the dish, while the bright acidity cuts through the olive oil and ties the broth and fennel together. A brilliant, place-based pairing. |
| Grillo (Sicily) | A classic Sicilian white with generous citrus, white flowers, and a subtle herbal undertone that mirrors the wild fennel. The body is medium, with enough presence to stand up to the concentrated fish broth without overwhelming the delicate mullet. |
| Gavi di Gavi (Piedmont) | Made from the Cortese grape, Gavi offers high acidity, lemon and green melon notes, and a clean, minerally finish. Its precision and restraint let the layered flavors of the pasta take center stage, while its acidity refreshes the palate between rich, broth-slicked bites. |
| Soave Classico (Veneto) | A classic Italian white made from Garganega — bright, with bitter almond, white peach, and a subtle saline finish. The almond note again echoes the garnish, while the medium body and brisk acidity make it a natural partner for the fish broth and olive oil. |
| Etna Bianco (Sicily) | Grown on the volcanic slopes of Mount Etna, this Carricante-based wine is electric with minerality, citrus zest, and a distinct sea-salt character. The volcanic terroir gives it a structural intensity that matches the concentrated fish broth beautifully, while the lemon-zest note harmonizes with the garnish. |
| Franciacorta Brut (Lombardy) | A bottle-fermented sparkling wine with bracing acidity, green apple, and toasted bread notes. The bubbles act as a palate cleanser, resetting your taste buds after each forkful of the rich, broth-soaked pasta, making every bite taste as bright and fresh as the first. |
| Calories | Protein | Fat | Carbs | Fiber |
|---|---|---|---|---|
| ~480 | 24 g | 18 g | 55 g | 3 g |
Nutritional values are estimates based on 4 servings with the specified quantities of spaghetti, red mullet, almonds, olive oil, and white wine. Actual values will vary based on the exact fish size, the amount of olive oil absorbed during searing and finishing, and the specific type of pasta used. The dish is a good source of lean protein from the red mullet, healthy monounsaturated fats from the extra-virgin olive oil and almonds, and complex carbohydrates from the semolina pasta. Wild fennel contributes vitamins A and C, as well as antioxidants. To reduce fat, use 2 tablespoons of olive oil for searing instead of 3 and skip the finishing drizzle. For a higher-fiber version, use whole-wheat spaghetti (increase to about 620 calories and 7 g of fiber per serving). Red mullet is a sustainable seafood choice when sourced from Mediterranean fisheries certified by the Marine Stewardship Council (MSC) — look for the blue label, or ask your fishmonger for traceable, line-caught fish.
What is red mullet, and what does it taste like?
Red mullet (triglia in Italian, rouget barbet in French) is a small, pinkish-red fish with a firm, flaky white flesh that is sweet, delicate, and mildly briny — somewhere between snapper and sea bass in flavor, but more intense. Its skin is edible and becomes beautifully crisp when seared. The bones and heads are exceptionally flavorful, which is why they are the foundation of the broth in this recipe. If you cannot find red mullet, small whole snapper, porgy, or branzino are excellent substitutes.
What if I can't find wild fennel?
Wild fennel fronds (finocchietto selvatico) have a delicate, sweet anise flavor that is distinct from fennel bulb. If you cannot find them, use the feathery fronds from a standard fennel bulb — they are milder but work well. To boost the anise note, crush ½ teaspoon of fennel seeds in a mortar and add them to the skillet along with the broth. A small handful of fresh dill (about ¼ cup) can also substitute, though it has a different aromatic profile — use dill only if you enjoy its distinctive flavor with fish.
Can I make the fish broth in advance?
Absolutely. The broth can be made up to 2 days ahead and stored in the refrigerator, or frozen for up to 1 month. Cool the strained broth completely, transfer to an airtight container, and refrigerate or freeze. If using frozen broth, thaw overnight in the refrigerator before using. The broth also freezes beautifully in ice cube trays for smaller portions — perfect for adding depth to a quick weeknight fish soup or risotto.
Do I have to use spaghetti, or can I use another pasta shape?
Spaghetti is traditional and allows the delicate sauce to coat each strand evenly, but linguine, bucatini, or even thin fettuccine work well. Short pasta like trofie or gemelli would also be delicious, though the broth sauce will cling differently. Avoid very thick shapes like pappardelle or rigatoni — the lighter, wine-and-broth sauce needs a slender pasta that can be coated evenly.
Can I use store-bought fish stock instead of making my own?
Store-bought fish stock is significantly weaker than the homemade version and will produce a noticeably thinner, less flavorful dish. If you must use it, choose an unsalted, high-quality brand (such as Bar Harbor or More Than Gourmet) and reduce it by half before using to concentrate the flavor. Better yet, save your shrimp shells and fish bones in the freezer and make a quick homemade stock — it takes 30 minutes and the difference is night and day.
My broth turned out cloudy. What went wrong?
Cloudy fish broth is usually the result of boiling instead of simmering, or not skimming the foam as it rises. A gentle simmer (barely trembling water) keeps the proteins from emulsifying into the liquid, producing a clear, clean broth. If your broth is already cloudy, don't worry — it will still taste good, just present slightly less elegantly. Strain it through a cheesecloth-lined fine-mesh strainer for the clearest possible result.
Can I use frozen fish?
Frozen whole red mullet is acceptable if fresh is unavailable, but the bones will produce a slightly less flavorful broth. Defrost the fish completely in the refrigerator overnight, pat it thoroughly dry, and proceed as directed. The fillets will be slightly less firm and may release more moisture during searing — pat them especially dry with paper towels before cooking.
Is this dish gluten-free?
No — the spaghetti is made from wheat semolina (durum wheat). To make it gluten-free, use a good-quality gluten-free spaghetti (such as Rummo or Barilla gluten-free) and follow the same cooking method. The remaining ingredients (fish, almonds, fennel, olive oil, wine, lemon) are naturally gluten-free.
Photo reference: `vol1_116.png` — A close-up, slightly elevated overhead shot of a shallow, wide-rimmed ceramic bowl (warm white or cream) filled with a neat twirl of golden spaghetti, glistening with a light, emulsified sauce. Small, golden-brown seared pieces of red mullet fillet are scattered across the top, interspersed with thin, toasted almond slivers and delicate, feathery green wild fennel fronds. A fine grating of fresh lemon zest dots the surface with specks of bright yellow. The pasta is glossy and saucy but not wet, with a thin sheen of extra-virgin olive oil catching the light. Soft, warm side lighting from upper left, creating gentle shadows and highlighting the texture of the fish and almonds. A shallow depth of field keeps the pasta in sharp focus while the background falls into a soft, warm blur. The table setting beneath features a rustic linen napkin and a glass of pale Vermentino in the background. The overall impression is elegant, sun-drenched Mediterranean simplicity — the kind of dish that looks effortless but reveals its depth and sophistication with every detail.
Recipe from "The Italian Kitchen" by Vita Milanese — Volume 1: Pasta Perfetto
Recipe from The Italian Kitchen by Vita Milanese — Volume 1 · Pasta Perfetto. Discover all volumes on the ebook page.