The principles of recovery directly after a training session can be summed up in the 3 R’s, Refuel, Re-hydrate and Repair.
It is important to replenish your glycogen stores, which would have been depleted during training, as soon as possible. Especially when doing high quality workouts or long runs lasting 90 minutes or more. Within 15 minutes of completing training, either drink 500ml of a carbohydrate drink or eat a high GI carbohydrate snack such as banana or dried fruit. Aim to have a more substantial meal with approximately a 3:1 Carbohydrate to Protein ratio within 1 hour of completing training. The reason for this is that there is a window period directly after training where the replenishment of glycogen is at its optimal and maximizing this window will help speed the recovery process.
I like to take in a lot of dairy and eggs, my personal favorite being a shake made of milk, raw egg, and banana. Cheap and effective.
Not only do you lose a lot of water during long and hard training sessions (remember you sweat in cold weather too!), but also electrolytes (sodium, potassium, chloride) which play an important role in the healthy functioning of your muscles, nerves and energy system. It is therefore important that your rehydration drink contains added electrolytes for replenishment.
The soreness you experience in your legs after long hard training is due to microscopic tears in your muscles. Ice your muscles by either standing in icy water or by massaging them gentle with ice blocks. This helps to reduce the inflammation in the muscles and constricts the blood vessels to push out waste products.
Follow with a light massage (or self-massage by rolling on a foam roller), this in turn increases the flow of fresh oxygenated blood back to the muscles to speed up the healing process.