Prep the noodles: Soak or parboil rice noodles according to package directions until just tender. Rinse under cool water to stop cooking and toss with a little oil to prevent sticking.
Set aside.
Chop the vegetables and protein: Cut veggies into bite-size pieces. Slice chicken thinly, peel and devein shrimp if using, or cube extra-firm tofu and pat it dry.
Warm the aromatics: Heat 1–2 tablespoons oil in a wide pan or wok over medium heat. Add minced garlic and ginger, cooking for 30 seconds until fragrant, not browned.
Bloom the curry paste: Stir in 2–3 tablespoons green curry paste and cook for 1–2 minutes.
This step releases the oils and boosts flavor. If you like it hotter, add up to 4 tablespoons.
Add coconut milk: Pour in one 13–14 oz can of coconut milk. Stir to combine with the paste until smooth and gently bubbling.
Loosen with stock: Add 1/2 to 1 cup stock or water to reach a soup-like consistency that will coat the noodles.
Bring to a gentle simmer.
Season the base: Add 1–2 teaspoons fish sauce, 1 teaspoon sugar, and a squeeze of lime. Taste and adjust. You want salty, sweet, tangy, and spicy in balance.
Cook the protein: Add chicken or tofu first and simmer until nearly cooked through (about 5–6 minutes for chicken, 3–4 for tofu).
If using shrimp, add later with quick-cooking vegetables to avoid overcooking.
Add the vegetables: Stir in sturdier veggies like broccoli or eggplant first, then add tender ones like snap peas or bell peppers. Simmer until crisp-tender, 3–5 minutes total.
Finish with herbs and lime: Turn off the heat. Stir in torn Thai basil or cilantro, more lime juice to taste, and kaffir lime leaves if using.
Remove leaves before serving.
Combine with noodles: You can either ladle the curry over bowls of noodles or toss the noodles directly into the pan to coat them in the sauce. Add a splash of hot water if it gets too thick.
Serve: Top with extra herbs, sliced chilies, and green onions. Taste again and finish with a few drops of fish sauce or lime if needed.