Thai Fish Skewers Recipe That Grills Fragrant with Lemongrass
Make fragrant Thai fish skewers at home with this red curry and lemongrass marinade recipe. Grilled, spicy, street food style. Get the full recipe now.
Walk down almost any beach road in Thailand in the early evening and you will find a grill usually a simple charcoal half-drum with skewers of fish laid across it, the marinade dripping and sizzling onto the coals below, sending up clouds of fragrant smoke that smell of lemongrass, galangal, and chilli. Thai fish skewers are one of the great coastal street food traditions, and they are also one of the easiest dishes in this entire collection to make at home fish needs far less marinating time than meat, and the cooking is fast, simple, and forgiving.
This recipe is built around a red curry paste marinade the same fragrant, complex base used in Thai red curries, here used as a marinade rather than a sauce base. The combination of red curry paste, coconut milk, fish sauce, lime, and palm sugar creates a marinade that is simultaneously spicy, savoury, sweet, and bright with citrus the full range of Thai flavour in a single coating. Threading the fish onto fresh lemongrass stalks (rather than standard skewers) adds an additional layer of aromatic infusion as the lemongrass heats and releases its citrusy oils directly into the fish during grilling.
Whether you are cooking over charcoal for the full beach-grill experience, in an oven for convenience, or in a grill pan for a quick weeknight dinner, this recipe delivers the bright, complex, herb-forward flavour that makes Thai grilled seafood so universally loved. Served with a simple sweet chilli dipping sauce, fresh herbs, and lime wedges, these skewers are a complete, light, satisfying dish in under an hour.
What Makes These Thai Fish Skewers Special
Thai coastal cooking is built on balance the interplay of sweet, sour, salty, and spicy in careful proportion. This recipe is designed around that balance, with several specific techniques that elevate it beyond a basic marinated fish skewer:
- Red curry paste as marinade base: Thai red curry paste a blend of dried red chillies, lemongrass, galangal, garlic, shallot, shrimp paste, and spices is an extraordinarily efficient flavour shortcut. A few tablespoons deliver a complexity of aromatics that would otherwise require a dozen separate ingredients. Using good quality red curry paste (store-bought is completely acceptable and used in Thai homes every day) as the marinade base is the single biggest flavour decision in this recipe.
- Coconut milk for richness and tenderising: A small amount of coconut milk in the marinade adds richness, helps the marinade adhere to the fish, and its mild acidity gently tenderises the fish flesh without the aggressive enzyme action that would make delicate fish flesh fall apart.
- Lemongrass skewers: Using fresh lemongrass stalks (with the tough outer layers removed and the tip trimmed to a point) as the actual skewer means the fish is threaded directly onto an aromatic, edible (or at least infusing) stick. As the lemongrass heats on the grill, it releases its citrusy, herbal oils directly into the fish an infusion technique that bamboo or metal skewers simply cannot replicate.
- Short marinating time by design: Unlike the meat-based recipes in this collection that benefit from overnight marinating, fish should not be marinated for more than 2 hours. The acid in the marinade (lime juice, coconut milk) begins to "cook" the delicate fish flesh through denaturation if left too long producing a mushy, ceviche-like texture rather than a firm, grilled texture. This recipe is built around a 30-minute to 2-hour window that maximises flavour without compromising texture.
- Sweet chilli dipping sauce contrast: The marinade itself is savoury-spicy-aromatic; the dipping sauce is bright, sweet, and tangy. This deliberate contrast rather than serving a sauce that duplicates the marinade flavour gives every bite a dynamic range from the fish itself to the dip.
Ingredients Overview
The fish should be a firm white fish that holds together on a skewer through grilling monkfish, swordfish, mahi-mahi, halibut, or firm cod loin are all excellent choices. Avoid delicate, flaky fish like sole or plaice, which will fall apart on the skewer. Cut into 2-inch cubes large enough to skewer securely, small enough to cook through quickly without drying out.
Thai red curry paste varies significantly in heat and saltiness by brand taste a small amount before adding to the marinade and adjust quantities accordingly. Red curry paste is a foundational Thai pantry ingredient and a good quality jarred version is entirely authentic even Thai home cooks frequently use store-bought paste rather than making it from scratch for everyday cooking.
Fish sauce is the salt of Thai cuisine there is no substitute that replicates its specific umami depth, though light soy sauce can work in a pinch for those avoiding fish products (note this would make the dish non-pescatarian-appropriate in spirit but is a functional substitute). Palm sugar provides a rounder, less sharp sweetness than white sugar if unavailable, brown sugar is a close substitute. Fresh lemongrass both in the marinade (finely minced) and as the skewer itself is the aromatic backbone of the dish and fresh lemongrass (not the dried or paste versions) makes a significant difference to the final fragrance.
How to Make It
Make the red curry marinade by combining curry paste, coconut milk, fish sauce, palm sugar, lime juice, and minced lemongrass. Coat the fish cubes and marinate for 30 minutes to 2 hours not longer. Prepare the lemongrass skewers by trimming and pointing the stalks. Thread the fish onto the lemongrass (or standard skewers if lemongrass stalks are too fragile). Grill over high heat for 10–12 minutes total, turning once, until charred at the edges and cooked through. Serve immediately with sweet chilli sauce, fresh herbs, and lime.
This is one of the fastest recipes in this entire collection total time from start to plate can be under 45 minutes if using the minimum marinating time, making it an excellent option for a quick but impressive dinner.
Tips for Best Results
- Do not marinate fish for more than 2 hours. Unlike meat, the acid in this marinade (lime juice, coconut milk) will begin to break down the delicate protein structure of fish if left too long, resulting in a mushy texture. Thirty minutes to one hour is the ideal window for maximum flavour without texture compromise.
- Choose a firm fish and cut generously. 2-inch cubes of monkfish, swordfish, or mahi-mahi hold their shape on the grill. Smaller pieces or more delicate fish will overcook and fall apart before they develop any char.
- If using lemongrass skewers, prepare them correctly. Remove the tough, fibrous outer two or three layers of the lemongrass stalk, leaving the more tender, pale interior. Trim the root end into a sharp point with a knife. If the stalk feels too thin or fragile to support the fish, double up two stalks together or use a standard metal or bamboo skewer instead and place a piece of lemongrass alongside on the grill for aromatic infusion.
- Oil the grill grates or pan well. Fish is more prone to sticking than meat due to its protein structure. A well-oiled grilling surface and not moving the fish until a crust has formed are both essential to prevent the fish tearing apart when you try to flip it.
- Cook to just opaque, not beyond. Fish continues to cook from residual heat after it leaves the grill. Remove the skewers when the fish is just turning fully opaque at the centre by the time it reaches the table, it will be perfectly cooked through without being dry.
Serving Suggestions
Serve Thai fish skewers with a sweet chilli dipping sauce (rice vinegar, sugar, fish sauce, garlic, and red chilli, simmered until syrupy) and a generous scatter of fresh herbs Thai basil, coriander, and mint alongside lime wedges. A simple som tam (green papaya salad) or a cucumber and shallot salad dressed with lime and fish sauce makes an excellent, refreshing accompaniment that echoes the Thai beach-grill experience.
For a full meal, serve over steamed jasmine rice or alongside pad thai or Thai fried rice for a complete spread. For a party platter, arrange the skewers on a large banana leaf both visually authentic and practically useful, as the leaf can be discarded after the party rather than requiring a platter wash.
Storage and Reheating
Store cooked Thai fish skewers in an airtight container in the fridge for up to 1 day fish does not keep as well as meat or vegetables once cooked, and the texture deteriorates more rapidly. This recipe is best enjoyed fresh on the day it is made.
If you do need to reheat, do so very gently place in a covered pan over low heat for 2–3 minutes, or in a low oven (150°C) for 5 minutes. Avoid high heat or extended reheating, which will dry out and toughen the fish significantly. The microwave is not recommended as it tends to overcook fish from the outside in within seconds.
The marinade itself (without fish) can be made up to 2 days ahead and stored in the fridge prepare the marinade in advance and add the fish on the day of cooking for the freshest result with maximum convenience.
Variations and Substitutions
- Thai prawn skewers: Replace the fish with large raw prawns (peeled, deveined, tail left on for presentation). Reduce marinating time to 20–30 minutes maximum prawns are even more delicate than fish and over-marinating produces a mushy texture quickly. Reduce grilling time to 2–3 minutes per side.
- Thai chicken satay style: Apply the same red curry marinade to thin strips of chicken thigh threaded onto skewers in a ribbon pattern. This is closer to the classic Thai satay format and the chicken can be marinated for 2–4 hours without the texture concerns that apply to fish. Serve with a peanut dipping sauce alongside the sweet chilli for the full satay experience.
- Green curry fish skewers: Replace the red curry paste with Thai green curry paste for a brighter, more herbaceous, slightly less sweet variation. Green curry paste tends to be hotter than red taste and adjust quantity accordingly.
- Grilled whole fish (pla pao style): For a more dramatic presentation, apply the marinade to a whole small fish (such as sea bass or tilapia) with the cavity stuffed with lemongrass, kaffir lime leaves, and galangal. Grill whole over medium heat for 8–10 minutes per side until the skin is charred and the flesh is cooked through. This is the iconic Thai beach restaurant whole-fish presentation.
- Coconut rice pairing (khao man): Cook jasmine rice with a portion of coconut milk replacing some of the water, plus a pandan leaf if available, for a fragrant coconut rice that pairs exceptionally well with the red curry fish skewers and rounds out the meal with minimal additional effort.
Also Read: Tofu Karaage Recipe
Preparation Method
Cut the firm white fish into even 2-inch cubes. Combine the red curry paste, coconut milk, fish sauce, palm sugar, lime juice, and finely minced lemongrass in a bowl whisk until the curry paste is fully incorporated and the marinade is smooth. Add the fish and turn gently to coat fish is delicate, so fold rather than vigorously mix.
While the fish marinates (30 minutes to 2 hours), prepare the lemongrass skewers by trimming the tough outer layers and pointing the root ends, make the sweet chilli dipping sauce, and prepare any accompaniments (rice, salad, herbs). Thread the marinated fish onto the prepared skewers just before grilling.
Standard Operating Procedure (SOP)
Step 1 Fish prep: Cut firm white fish (monkfish, swordfish, mahi-mahi, or cod loin) into even 2-inch cubes. Pat dry lightly.
Step 2 Make marinade: Whisk red curry paste, coconut milk, fish sauce, palm sugar, lime juice, and finely minced lemongrass until smooth and uniform. Taste and adjust should be spicy, savoury, sweet, and citrusy.
Step 3 Marinate: Fold the fish gently into the marinade, coating all surfaces. Cover and refrigerate for 30 minutes to a maximum of 2 hours. Do not exceed 2 hours.
Step 4 Prepare lemongrass skewers: Trim 2–3 tough outer layers from fresh lemongrass stalks. Cut to 20–25cm length. Trim the root end to a sharp point with a knife. If too fragile, use standard skewers with a piece of lemongrass placed alongside on the grill.
Step 5 Make dipping sauce: Combine rice vinegar, sugar, fish sauce, minced garlic, and chopped red chilli in a small pan. Simmer for 5 minutes until syrupy. Cool before serving.
Step 6 Thread skewers: Remove fish from marinade do not wipe off. Thread 3–4 cubes onto each lemongrass or standard skewer, leaving small gaps.
Step 7 Grill: Heat grill, grill pan, or oven grill to high heat. Oil the grilling surface well. Place skewers and cook for 5–6 minutes per side total 10–12 minutes until charred at the edges and the fish is just opaque throughout.
Step 8 Rest briefly: Rest 1–2 minutes fish continues cooking from residual heat.
Step 9 Garnish and plate: Arrange on banana leaf or platter. Add fresh herbs, lime wedges, and sweet chilli sauce. Serve immediately.
Garnish and Presentation
Thai fish skewers have a naturally vibrant visual profile the deep red-orange of the curry paste marinade against the charred, slightly blistered edges of the grilled fish, with the pale yellow-green of the lemongrass skewers running through the centre. The garnish should amplify the dish's Thai coastal identity with fresh herbs and citrus.
The essential garnish elements are fresh Thai basil leaves (with their distinctive anise fragrance sweet basil is a substitute but the flavour difference is noticeable), fresh coriander, fresh mint leaves, and lime wedges. A scatter of thinly sliced fresh red chilli and finely julienned kaffir lime leaves (if available) adds both colour and an intensely fragrant citrus note that is unmistakably Thai. The sweet chilli dipping sauce, with its translucent amber-red colour and visible flecks of chilli and garlic, should be served in a small bowl alongside its glossy texture provides a visual and textural contrast to the charred fish.
Plating and Serving Tips
For the most authentic presentation, serve the skewers directly on a fresh banana leaf laid across a platter or board banana leaves are available at Asian grocery stores and add genuine visual and aromatic authenticity (a faint green, slightly sweet fragrance) that no other presentation surface can replicate. Arrange the skewers in a loose fan, scatter the fresh herbs generously across and around them, and tuck lime wedges between the skewers. Place the dipping sauce in a small bowl at one end of the leaf.
For a sit-down dinner, plate 2 skewers per person on a flat white or dark plate alongside a portion of coconut rice or jasmine rice. Add a small herb salad Thai basil, coriander, mint, and thinly sliced shallot dressed with lime juice and fish sauce to one side of the plate. Drizzle a small amount of the sweet chilli sauce in a line beside the skewers rather than over them, preserving the visual definition of the charred fish.
For a beach-party or BBQ presentation, serve the skewers directly off the grill, stacked in a casual pile on a large platter or board, with bowls of dipping sauce, lime wedges, and fresh herbs arranged around them for guests to garnish their own portions. This informal, help-yourself format is true to how Thai grilled seafood is enjoyed at coastal food stalls and creates a relaxed, communal eating experience that suits a casual outdoor gathering.
Made these Thai fish skewers? That first bite the char of the grill, the heat of the red curry, the bright hit of lime is exactly the flavour of a Thai beach evening. Leave a star rating and a comment below; it genuinely helps other readers find this recipe. Share your platter on Instagram and tag us we would love to see your version!
Ingredients
- 600g firm white fish
- 3 tablespoons Thai red curry paste (good quality store-bought is fine)
- 3 tablespoons coconut milk (full-fat, well-stirred)
- 1½ tablespoons fish sauce
- 1 tablespoon palm sugar, grated (or brown sugar)
- 2 tablespoons fresh lime juice
- 1 stalk fresh lemongrass, very finely minced
- 2 tablespoons water
- 3 tablespoons sugar
- 4 tablespoons rice vinegar
- 6–8 fresh lemongrass stalks (for skewers)
- 1 teaspoon turmeric powder
- 1 tablespoon fish sauce
- 1–2 fresh red chillies, finely chopped
- 2 cloves garlic, finely minced
Nutritional Information
- Calories: 198 kcal
- Protein: 26g
- Carbohydrates: 6g
- Fat: 7g
- Fiber: 0.5g
- Sodium: 480mg
- Sugar: 4g
Directions
1. PREP THE FISH
1. Cut the firm white fish into even 2-inch cubes. Pat lightly with kitchen paper to remove excess surface moisture — do not dry completely, as a slightly moist surface helps the marinade adhere.
2. MAKE THE RED CURRY MARINADE
2. In a mixing bowl, combine red curry paste, coconut milk, fish sauce, grated palm sugar, lime juice, finely minced lemongrass, and turmeric if using.
3. Whisk until the curry paste is fully incorporated and the marinade is smooth with no lumps of paste remaining.
4. Taste a small amount (it is safe to taste the marinade itself before adding fish) — it should be spicy, savoury from the fish sauce, sweetly rounded from the palm sugar, and bright with lime and lemongrass. Adjust curry paste for heat, fish sauce for saltiness, or sugar for sweetness.
3. MARINATE THE FISH TIMING IS IMPORTANT
5. Add the fish cubes to the marinade. Fold gently with a spoon or your hands to coat every piece — do not stir vigorously, as fish flesh is delicate and can break apart with rough handling.
6. Cover and refrigerate for a minimum of 30 minutes. Maximum marinating time is 2 hours — do not exceed this. Beyond 2 hours, the acid in the lime juice and coconut milk begins to denature the fish proteins excessively, producing a mushy, ceviche-like texture rather than a firm, grillable one.
4. PREPARE THE LEMONGRASS SKEWERS
7. Take 6–8 fresh lemongrass stalks. Peel away and discard the tough, fibrous outer 2–3 layers, leaving the more tender, pale inner stalk.
8. Trim each stalk to a length of 20–25cm. Using a sharp knife, carefully shave the root end of each stalk into a point — similar to sharpening a pencil. This pointed end will pierce the fish for threading.
9. If a stalk feels too thin, fragile, or likely to snap under the weight of the fish, either double up two stalks bound together with kitchen string, or set the lemongrass stalks aside and use standard bamboo or metal skewers instead — placing the lemongrass stalks directly on the grill alongside the fish skewers for aromatic infusion through smoke.
5. MAKE THE SWEET CHILLI DIPPING SAUCE
10. Combine rice vinegar, sugar, fish sauce, minced garlic, chopped red chilli, and water in a small saucepan.
11. Bring to a simmer over medium heat. Simmer for 5 minutes, stirring occasionally, until the mixture has reduced slightly and become syrupy — it should coat the back of a spoon.
12. Remove from heat and allow to cool to room temperature before serving. The sauce will thicken further as it cools. Can be made up to 3 days ahead and refrigerated.
6. THREAD THE SKEWERS
13. Remove the marinated fish from the fridge. Do not wipe off the marinade — a light coating should remain on the fish as it goes onto the skewer.
14. Carefully thread 3–4 fish cubes onto each prepared lemongrass skewer (or standard skewer), piercing through the centre of each cube. Leave small gaps between pieces for even heat circulation.
7. GRILL THE SKEWERS
15. Heat a charcoal grill, gas grill, grill pan, or oven grill/broiler to high heat. Oil the grilling surface generously with neutral oil — fish sticks more readily than meat and a well-oiled surface is essential.
16. Place the skewers on the hot grill. Cook for 5–6 minutes on the first side without moving — allow a light char to develop before attempting to turn. If the fish resists when you try to turn it, it is not ready — give it another 30–60 seconds.
17. Turn the skewers carefully using tongs. Cook for a further 5–6 minutes on the second side until the fish is charred at the edges and just turning fully opaque throughout. Total grilling time: 10–12 minutes.
18. If grilling whole lemongrass stalks alongside (rather than using them as skewers), place them directly on the grill grates near the fish skewers — they will char slightly and release aromatic smoke that infuses the fish.
8. CHECK DONENESS AND REST
19. The fish is done when it is opaque throughout (no translucent or raw-looking centre) and flakes easily when tested with a fork at the thickest point. Because of the short cooking time involved, check the largest piece on the largest skewer to confirm doneness across the batch.
20. Rest the skewers for 1–2 minutes before serving — residual heat will complete any final cooking without overcooking the exterior.
9. GARNISH AND PLATE
21. Arrange the skewers on a banana leaf, platter, or board.
22. Scatter fresh Thai basil, coriander, and mint leaves generously across and around the skewers.
23. Add sliced fresh red chilli and julienned kaffir lime leaves if using.
24. Tuck lime wedges between the skewers.
25. Place the cooled sweet chilli dipping sauce in a small bowl alongside.
26. Serve immediately with steamed jasmine rice or coconut rice and any salad accompaniments.
Rate this Recipe
User Reviews
No reviews yet. Be the first to share your thoughts!