Curry Fish Ball Skewers

published Jun 9, 2022
Curry Fish Ball Skewers Recipe

This classic Hong Kong street food of chewy fish balls simmered in curry sauce gets a turn on a smoky grill.


Makes6 skewers

Prep10 minutes

Cook4 minutes to 6 minutes

Jump to Recipe
We independently select these products—if you buy from one of our links, we may earn a commission. All prices were accurate at the time of publishing.
fishball skewers on a plate with colorful napkins on background
Credit: Photo: Christopher Testani; Food Styling: Jessie YuChen; Prop Styling: Carla Gonzalez Hart; Blanket courtesy of Happy Habitat

My first memories of grilling out weren’t of a typical American meal of hamburgers, hot dogs, or barbecue chicken. Instead, my Chinese family used a park grill or firepit and we did all our cooking on skewers, s’mores-style.

It was a leisurely paced meal actually a bit similar to hot pot, where we threaded fish balls, sausages, or chicken wings onto a wooden skewer and patiently cooked each one over the open flame. The food picked up some smoky flavor and got a little char on the outside, and each bite was extra-satisfying because you cooked it yourself. I took this idea of grilling out with my family and made a riff on the classic Hong Kong street food of curry fish balls. The result is this easy skewer recipe with chewy fish balls coated in a coconut curry sauce that you can serve as an appetizer or main dish at your next grill fest.

What Are Fish Balls?

Chinese fish balls are chewy balls of fish paste. They’re different from most Western or European meatballs, where you usually want a tender texture that’s moist on the inside. Instead, fish paste is mixed with enough starch and is handled enough so the texture is chewy, bouncy, and what’s known in Chinese as QQ, or extra-chewy. They’re generally mild in flavor and come in a range of textures, from coarsely ground to finely ground fish.

How to Buy Fish Balls

For this recipe, you’ll need fish balls that aren’t too big, so go for 3/4- to 1-inch-wide ones. Fish balls, which are usually sold fully cooked, are available in the refrigerated or freezer section of Asian markets. Some fish balls are stuffed (usually the larger ones), but I prefer the unstuffed ones. You can choose between plain ones, which are white, or fried ones, which are brown on the outside. You can also make your fish balls — just make sure to boil or fry them first. 

Credit: Photo: Christopher Testani; Food Styling: Jessie YuChen; Prop Styling: Carla Gonzalez Hart; Blanket courtesy of Happy Habitat

How to Make Fish Ball Skewers

  • Make the marinade. Stir coconut milk, garlic, fish sauce, curry powder, and sugar together to make an easy marinade.
  • Marinate the fish balls. Add the fish balls (thawed if frozen) and some scallion pieces to the marinade and let them sit while the grill heats up. Make sure the grill is clean and your skewers are soaked if you’re using wooden or bamboo.
  • Assemble the skewers. Thread the fish balls and scallions onto the skewers, alternating them. Poke through the scallion pieces crosswise.
  • Grill the skewers. Grill the skewers until the fish balls are hot and are charred in spots. Because they’re already cooked, it should only take a few minutes.

What to Serve with Fish Ball Skewers

The skewers can be served on their own as an appetizer, or with steamed rice or a light salad, like this crunchy cabbage and ramen noodle salad. They would also be tasty wrapped up in lettuce leaves with some mint, cilantro, and cucumber on top.

Curry Fish Ball Skewers Recipe

This classic Hong Kong street food of chewy fish balls simmered in curry sauce gets a turn on a smoky grill.

Prep time 10 minutes

Cook time 4 minutes to 6 minutes

Makes 6 skewers

Serves 6

Nutritional Info


  • 1 (10 to 11-ounce) package

    fully cooked Asian fish balls (regular or fried, or a combination) (see Recipe Notes)

  • 6

    (10 to 12-inch) skewers

  • 3 to 4 cloves


  • 1/4 cup

    canned full-fat coconut milk

  • 2 teaspoons

    curry powder

  • 2 teaspoons

    fish sauce

  • 1/2 teaspoon

    granulated sugar

  • 1/8 teaspoon

    kosher salt

  • 4 to 6

    large scallions

  • Vegetable oil, for oiling the grill


  1. If using frozen fish balls, thaw 1 (10 to 11-ounce) package in the refrigerator for 1 to 2 days.

  2. If using wooden or bamboo skewers, soak 6 in water while you marinate the fish balls and heat the grill.

  3. Mince 3 to 4 garlic cloves until you have 1 tablespoon and place in a medium bowl. Add 1/4 cup coconut milk, 2 teaspoons curry powder, 2 teaspoons fish sauce, 1/2 teaspoon granulated sugar, and 1/8 teaspoon kosher salt, and stir until combined.

  4. Trim 4 to 6 large scallions, then cut the whites and light green parts crosswise 1 1/2-inch pieces until you have a few pieces less than the number of fish balls; reserve the dark greens parts for another use.

  5. Add the scallions and fish balls to the curry mixture and toss to combine. Let sit at room temperature for at least 20 minutes and up to 1 hour. Meanwhile, heat an outdoor grill for direct, medium heat (about 350ºF).

  6. Assemble the skewers: Starting and ending with a fish ball, alternate threading the fish balls and scallion pieces crosswise onto each skewer, they can be touching. Place on a baking sheet.

  7. When the grill is ready, scrape the grill grates clean if needed. Oil the grill grates with a paper towel dipped in vegetable oil. Place the skewers on the grill grates in a single layer at least 2-inches apart. Cover and grill until grill marks form on the bottom, 2 to 3 minutes. Flip the skewers, cover, and continue to grill until the fish balls are heated through and charred in spots, 2 to 3 minutes more.

Recipe Notes

Buying fish balls: Fully cooked fish balls can be found in the refrigerated or freezer sections of Asian grocery stores. Choose ones that are 3/4 to 1-inch wide and are not stuffed, and thaw frozen fish balls before using. You can also use homemade fish balls, just boil or fry them first.

Storage: Leftovers can be refrigerated in an airtight container for up to 2 days.