There are many different things that can cause this, but here's one.
If you have an older version of a DLL in GAC, then any running code will apparently look there first, even if you have an updated version in the bin folder of your application (I could have sworn it was the other way around, but apparently not).
So, get rid of the old version from the GAC, make sure your reference copies the DLL local, and that should take care of it.
Again, just one solution out of many.