Heat oil in a small fry pan on medium heat and gently cook shallots and garlic until caramelised and golden brown (about 4-5 minutes).
In a large-size pot combine caramelised shallots and garlic, lemongrass, ginger, spice mix, sugar, fish sauce, chicken stock and chicken breasts. Cover with a lid and bring to a very gentle simmer. Simmer very gently for about 15 minutes to allow all the flavours to infuse and the chicken breasts are just cooked.
Meanwhile, prep the vegetables and cook the noodles according to packet instructions until just cooked through (do not over-cook). Rinse under cold water to prevent them sticking together. Drain and divide between serving bowls.
Remove the cooked chicken breasts from the soup and shred the meat using two forks. Divide shredded meat between bowls of noodles.
Strain the soup through a sieve. Return soup to the pot and bring to a boil. Season to taste with more fish sauce if needed.
To serve, ladle piping hot soup into bowls of noodles and chicken, and top with carrot, spring onion, bean sprouts, herbs, crispy shallots and kaffir lime leaf. Serve with a lime wedge to squeeze over, and more fish sauce and chilli to add to taste.
*Crispy Asian shallots are available at Asian supermarkets