Cook noodles in plenty of boiling salted water until just tender. Drain and set aside.
Heat oil in large saucepan over medium-high heat, then stir in garlic, onion, and curry paste and mash the paste around the bottom of the pan a bit to distribute it evenly. Cook until nice and fragrant - just a minute or two.
Add the tofu and gently stir until coated with the curry paste.
Stir in the coconut milk, stock, turmeric, shoyu and sugar. Bring to a simmer and simmer gently for 5 minutes.
Remove from the heat, stir in the lime juice, and add the noodles, jostling them a bit if they're sticking.
To serve, heap big piles of noodles into individual bowls and top with a generous ladle or two of the curry.
Top with peanuts and finish each bowl with a sprinkling of shallots and cilantro.