With all that said, you might ask--has anything changed? I'm happy to report that the answer to that is yes.
First up, there's the power. RAM has been bumped up to a standard 6GB on both storage variants, and coupled with the Exynos 9611 chip, there's enough grunt in the M31 to keep up with daily tasks and a bit of mobile gaming as well. Titles like COD Mobile and PUBG Mobile run easily enough on this device, without any dropped frames or lag.
Then there's the camera, which is now a much beefier quad camera system with a 64MP primary sensor, along with an 8MP ultrawide lens and two 5MP sensors--one for depth and another for macro shots. The 48MP sensor on the M30s was certainly no slouch, but the M31's 64MP sensor performs considerably better, with crisp colours, good dynamic range, and even more detail on offer. There's even a hint of natural bokeh without the portrait mode.
In fact, I think the image processing Samsung has employed in the M31 is some of the best I've seen on a smartphone, with overexposed and underexposed areas in photos being corrected after the shutter button goes off.
Even the macro mode produced excellent results, revealing details that otherwise go missed and preserved colours accurately--something most macro lenses on smartphones seem to get wrong. However, I do wish the autofocus system was slightly faster--there were times when I whipped the camera out to get a picture and had to wait for it to respond, or override it manually. Moreover, the M31's dedicated Night Mode left a lot to be desired, and it's the one area in Samsung's mid-range lineup that I think has room for improvement. The front camera has a new 32MP sensor as well, and despite the added ability to record videos in 4K, I'm not a big fan of how it makes me look in selfies, and the skin smoothening feature interferes far too much for my taste.