FM Steve Stoyko has recommended what is known as the 'Stoyko Test' as a sure way to improve. This method has been endorsed by NM Dan Heisman and others. The same idea was put forth many years ago by CJS Purdy and Kenneth Smith.
The idea is to improve you visualization and evaluation capabilities.
First find a middlegame position that appears 'rich' in ideas...read 'messy'. Then using a paper and pencil (or a pen...your choice) write down everything you can visualize from the position, including your evaluation.
Actually, keeping these tests in a notebook is even better.
You should be spending about an hour on the position. Don't move the pieces!!
When you are finished run your analysis through an engine and look for:
1-Moves you missed
2-Errors in visualization
3-Positions you evaluated wrong
4-Lines where you stopped analyzing too soon. This is important because stopping too soon can result in serious errors in evaluation.
More information and some sample positions can be found at the Kenilworth Chess Club Website.