I recently compared dll builds, and a dll released on Dev-C++ is only 18kb compared to the massive size in Code::Blocks+MinGW, wich is 483kb. As you can see the file is 27 times larger.
So in my interests, what does the other 96% of the dll contain?
And what should I toggle on/off to reduce the filesize closer to the Dev-C++ build.
Yes, including iostream has exactly this effect, even if you don't use it at all. This is because libstdc++ it is compiled statically into executable (unlike Visual Studio for example which uses a separate DLL).
For C programs MinGW uses msvcrt.dll, which is already included in every version of windows.