Melt butter, moderate heat, large flameproof casserole. Add chicken, cook 8 to 10 minutes, turning occasionally (until well browned). Remove pieces and add more until all are browned. Add chopped onions until translucent (5 to 7 minutes). Remove from heat, stir in flour to make smooth paste. Stir in chicken stock, avoiding lumps. Add salt, pepper, paprika, cayenne, dill, bay leaf, and Madeira. Boil over moderate, stirring constantly. Reduce to low, add chicken, cover, cook 30 minutes. Stir in asparagus and prawns, cook 30 minutes (until chicken tender). Place chicken in deep-sided serving dish; keep hot. Stir cream into casserole, cook, stirring constantly 2 to 3 minutes (until hot). Pour over chicken, discard bay leaf, serve immediately.
NOTES : Prawns should probably be put in later, roughly 10 minutes before serving.