Place chicken in a bowl together with the yogurt, garlic, bay leaf, and ginger. Cover and leave to marinate in the fridge for up to 2 hours – the longer you are able to leave it for, the more flavourful your dish will be.
When the chicken is ready, heat butter and oil in a pan and gently fry the onion with the garam masala, turmeric, coriander, cumin, and red pepper flakes until the onion is tender.
Add the marinated chicken and fry for 10 minutes to seal.
Add the water and chicken stock, reduce the heat to a simmer. and allow to cook for 20 minutes, stirring occasionally.
Stir in the cream and almonds and simmer for a further 10 minutes, serve topped with fresh coriander with a side of rice or naan bread.