Spicy Tofu with Coconut

Section: Satisfying Main Dishes for Every Occasion

This dish highlights crispy tofu cubes pan-fried to golden perfection, then gently enveloped in a luscious sauce made from full-fat coconut milk, red curry paste, and sambal oelek. Aromatic shallots and fragrant ginger build depth, balancing heat and creaminess with subtle sweetness. Inspired by Southeast Asian flavors, it pairs wonderfully with jasmine rice or noodles and can be customized with fresh vegetables or garnishes like toasted sesame seeds and scallions. Quick to prepare, it’s perfect for busy evenings and brings bold, layered flavors to the table.

A woman wearing a pink apron is cutting a cake.
Published By Evelyn
Updated as of Wed, 04 Feb 2026 23:17:56 GMT
A bowl of spicy tofu with creamy coconut sauce. Bookmark
A bowl of spicy tofu with creamy coconut sauce. | foodbymary.com

This Spicy Tofu with Creamy Coconut Sauce offers a bold and exciting meal that perfectly balances crispy, golden tofu with a rich, flavorful coconut sauce infused with red curry paste, sambal oelek, and fresh aromatics. This dish is a vibrant fusion inspired by Southeast Asian flavors and is great for anyone looking to enjoy plant-based cooking with plenty of heat and creaminess.

I first made this on a whim during a craving for something spicy and creamy. It quickly became a family favorite, with people requesting it repeatedly for its satisfying contrast of textures and deep, bold flavors.

Ingredients

  • Super firm or firm tofu: 20 to 22 ounces chosen for its ability to hold shape and crisp well when pan-fried pressing extra-firm tofu removes moisture for better texture
  • Canola or vegetable oil: frying tofu ensuring a high smoke point and neutral flavor
  • Coconut oil: preferred for its aroma and richness in the sauce
  • Shallots: thinly sliced to add a sweet, mild onion base that softens beautifully
  • Fresh ginger: minced to impart warmth and spice to the sauce
  • Full-fat coconut milk: creates the creamy texture and subtle sweetness essential for this dish
  • Sambal oelek: provides a bright, fiery heat that defines the dish’s spicy character
  • Red curry paste: adds depth and complexity with a blend of spices and aromatics typical of Thai cooking
  • Coconut sugar or brown sugar: balances heat with gentle sweetness
  • Ground coriander: adds a fragrant earthiness, optional but recommended
  • Kosher salt: enhances and balances all the other flavors
  • Optional garnishes: include sliced scallions, red pepper flakes for extra heat, and toasted sesame seeds for crunch and nuttiness

Step-by-Step Instructions

Prepare the Tofu:
Remove tofu from the packaging and pat dry thoroughly. If using extra-firm tofu, wrap in paper towels and press under a weighted plate for 20 minutes to expel excess moisture. Cut tofu into even 1-inch cubes to ensure uniform cooking and crisping.
Pan Fry the Tofu:
Heat 2 tablespoons of oil in a large non-stick or cast iron skillet over medium-high heat. Once hot, add tofu cubes in a single layer without crowding. Sprinkle lightly with kosher salt. Fry for about 3 minutes per side or until each face is golden brown and crisp, turning gently. Work in batches if necessary to avoid steaming the tofu. Set cooked tofu aside on a plate.
Make the Sauce:
In a skillet over medium heat, warm 2 tablespoons of coconut oil until shimmering. Add thinly sliced shallots and stir frequently to soften them evenly over about 5 minutes without browning. Add minced ginger and cook for another minute until fragrant. Stir in full-fat coconut milk, followed by sambal oelek, red curry paste, ground coriander if using, salt, and coconut sugar. Simmer for 3 to 4 minutes, stirring gently until the sauce thickens slightly and flavors meld together.
Combine and Serve:
Turn off heat and gently toss the crispy tofu into the warm sauce, coating each cube evenly without breaking them up. Transfer to a serving dish and garnish with sliced scallions, a sprinkle of red pepper flakes, and toasted sesame seeds if desired. Serve immediately over jasmine rice or alongside your favorite vegetables.
A bowl of spicy tofu with creamy coconut sauce. Bookmark
A bowl of spicy tofu with creamy coconut sauce. | foodbymary.com

Storage Tips

Store leftovers in an airtight container in the refrigerator for up to four days. Keeping tofu and sauce separate extends tofu’s crispiness. When reheating, gently re-crisp tofu in a hot skillet before adding the sauce to maintain texture. Add a splash of coconut milk when reheating if sauce feels too thick.

Ingredient Substitutions

Super firm tofu is best, but extra-firm works well if pressed. For a different heat profile, replace sambal oelek with chili garlic sauce or sriracha though these slightly change the flavor. If coconut oil isn’t available, neutral oils like vegetable or canola can be substituted though they lack coconut aroma. Use light coconut milk in a pinch, but sauce will be thinner and less rich.

Serving Suggestions

Serve over jasmine rice to soak up the flavorful sauce or coconut rice for added creaminess. Alternatively, try rice noodles or soba noodles for different textures. Roasted asparagus, steamed broccoli, or a crisp vegetable stir-fry complement the dish nicely. Top with fresh herbs like cilantro or Thai basil for brightness and toasted sesame seeds or crushed peanuts for added crunch.

Cultural Context

This recipe draws inspiration from Thai cuisine and Southeast Asian flavor profiles where coconut milk, chili pastes, and fresh aromatics are staples. The use of red curry paste and sambal oelek provides layers of complex heat and sweetness typical of dishes from this region, offering a comforting yet bold taste experience rooted in traditional cooking methods adapted for home cooks.

Pro Tips

  • Always press extra-firm tofu to ensure the crispiest edges and prevent a soggy texture
  • Do not overcrowd your pan when frying tofu to get an even golden crust and avoid steaming
  • Toast garnishes like sesame seeds or scallions briefly to boost flavor and add crunch to the final presentation

Common Recipe Questions

→ Can I prepare this dish ahead of time?

Yes, you can cook the tofu and sauce separately in advance. Store them apart to keep the tofu crisp, then combine and warm just before serving.

→ What type of tofu works best here?

Super firm or firm tofu is ideal. Press extra-firm tofu for about 20 minutes to remove moisture and ensure a crispy texture when pan-frying.

→ How can I adjust the spice level?

Modify the amount of sambal oelek to suit your taste—start with 2 tablespoons for mild, 3 for medium, and increase for more heat.

→ What are good vegetables to include?

Broccoli, asparagus, green beans, snow peas, and bok choy complement the dish well, either as sides or stirred into the sauce.

→ How do I keep the tofu crispy after cooking?

Avoid overcrowding the pan during frying to allow tofu cubes space to brown evenly. Store tofu separately from sauce if not serving immediately.

→ What can I use instead of sambal oelek?

Chili garlic sauce or sriracha can be suitable alternatives, offering similar heat and flavor profiles.

Spicy Tofu Creamy Coconut

Crispy tofu meets a rich, spicy coconut sauce with ginger and shallots for a vibrant, satisfying dish.

Prep Time
15 minutes
Cooking Time
15 minutes
Complete Time
30 minutes
Published By: Evelyn

Recipe Category: Main Dishes

Skill Level: Moderately Challenging

Cuisine Type: Thai

Total Portions: 4 Serves How Many (4 servings)

Dietary Preferences: Vegan Option, Vegetarian-Friendly, Gluten-Free, Dairy-Free

Required Ingredients

→ Tofu

01 600 to 625 grams super firm or firm tofu
02 30 milliliters canola or vegetable oil
03 Pinch of kosher salt

→ Sauce

04 30 milliliters coconut oil
05 150 grams shallots, thinly sliced
06 30 grams ginger, minced
07 240 milliliters full-fat coconut milk
08 45 to 60 milliliters sambal oelek (adjust to taste)
09 20 milliliters red curry paste
10 7 grams coconut sugar or brown sugar
11 1 gram ground coriander (optional)
12 6 grams Diamond Crystal kosher salt or 3 grams table salt, adjusted to taste

→ Optional Garnishes

13 Sliced scallions
14 Red pepper flakes
15 Toasted sesame seeds

Step-by-Step Instructions

Step 01

Remove tofu from packaging and pat dry. If using extra-firm tofu, wrap in paper towels and press under a weighted plate for 20 minutes. Cut into uniform 2.5 cm cubes.

Step 02

Heat 30 milliliters of oil in a large non-stick pan over medium-high heat. Arrange tofu cubes in a single layer and sprinkle with a pinch of kosher salt. Fry for approximately 3 minutes per side until golden and crisp, working in batches if necessary. Set aside.

Step 03

In a skillet, heat 30 milliliters coconut oil over medium heat. Add sliced shallots and cook, stirring frequently, until softened, about 5 minutes. Add minced ginger and cook until fragrant, about 1 minute. Stir in coconut milk, sambal oelek, red curry paste, ground coriander if using, salt, and sugar. Simmer gently for 3 to 4 minutes until the sauce thickens slightly.

Step 04

Turn off heat and gently fold the crispy tofu into the sauce until evenly coated.

Step 05

Transfer to a serving dish and garnish with scallions, red pepper flakes, and toasted sesame seeds as desired. Serve hot with jasmine rice or your preferred side.

Handy Cooking Tips

  1. Press tofu properly to remove moisture for optimal crispiness. Adjust sambal oelek quantity to control spice level. Use full-fat coconut milk for creamy texture. Avoid overcrowding the pan when frying tofu.

Necessary Kitchen Tools

  • Non-stick pan or cast iron skillet
  • Tofu press (optional)
  • Sharp knife
  • Measuring cups and spoons
  • Mixing bowls
  • Wooden spoon or spatula

Allergy Details

Always check ingredient packaging for potential allergens and consult a healthcare professional when in doubt.
  • Contains coconut; ensure red curry paste and sambal oelek are gluten-free if requiring gluten allergy precautions.

Nutritional Information (Per Serving)

These nutrition details are for guidance and don’t replace professional advice.
  • Calories: 350.5
  • Fat: 28.2 grams
  • Carbohydrates: 12.8 grams
  • Proteins: 15.3 grams