If I'm correct topicstarter has a 5d3.
For best results in lowlight, you want to gather as much light as you can so:
Make shutter speed as low as possible, probably 1/33th of a second.
Shoot with the lens wide open(max aperture), the lower the F-number the better, depends on the lens, but probably F 3.5 or lower.
(Consider buying a lens with a big aperture, for example Canon 35mm I.S. F2.0)
As stupid as it sounds, but if you need it, don't be afraid to use high iso numbers like 3200 or 6400 (6400 max)
When in low light situations, you're better of with a right epxosure with iso 6400, then with a wrong exposure at iso 800 and then have to bump exposure in post proces.
Other things that help, shoot in normal pixelbinning mode, 1920x1080.
4K options are nice, but it's much noisieer because there is no pixelbinning done.
Pixelbinning helps in reducing noise, especially on the 5d3 which bins both horizontal and vertical.
So
Shutter speed of 1/33th seconds
Wide open aperture (lowest F number)
High iso, like 3200-6400
1920x1080 in pixelbinning normal mode
And there is one other thing which helps a lot on the 6d, probably also on the 5d3, but it's not in the standard builds.
But since crop_rec 4k recording options became available, ML switched from rawtype stream 0x12 to 0x10.
Rawtype 0x12 doesn't work in altered crop modes.(only in vanilla crop modes when 5x zoom is used without crop_rec module)
Rawtype 0x12 is much cleaner (at least on the 6d that is, but my guess it's also the case for other cams).
With rawtype 0x10, you will see vertical lines(vertical bands) when using high iso on low light scenes, when rawtype 0x12 is used, these vertical banding is gone.
My guess is that Rawtype 0x12 is the cleanest rawtype where Canon performs some sort of darkframesubstraction in camera.
In the source code of magiclantern you can find "raw.c" in the "src" directory.
In raw.c you can find this line
#undef RAW_DEBUG_TYPE /* this lets you select the raw type (for PREFERRED_RAW_TYPE) from menu */
change the "#undef" to "#define" and compile a build.
#define RAW_DEBUG_TYPE /* this lets you select the raw type (for PREFERRED_RAW_TYPE) from menu */
When doing this you get an option in the debug menu to change rawtype to whatever you want, default is 0x10, but if you set it to 0x12 and record high iso, like 6400, you still get pretty good results.