There's a blurry line sometimes, but Application-class (Cortex A* cores, like A5, A35, etc. etc.) are solidly MPU. Not even close.
The actual difference IMHO is the existence of an MMU. (Which is, fdpic/linux-nommu efforts notwithstanding, the general "Linux" condition.)
(Ex.: the SOPHGO SG2000 RISC-V chip comes with integrated DDR3 RAM, but is still solidly an MPU. I believe there are some ARM Cortex-A with integrated RAM too, can't think of any off the top of my head. [Ed.: nevermind, the SG2000 is dual RISC-V/ARM])
It’s a little outdated but this blog post is a pretty good overview of the options available [1].
[0] - https://www.nuvoton.com/products/microprocessors/arm9-mpus/
As an aside, I'm pretty sure these chips were announced months ago despite what the article says.
For ARM, its rather simple. Cortex-M cores are MCUs, while Cortex-A cores are Microprocessors.
Cortex A72?? That's a Microprocessor.
Cortex M7? This is a Microcontroller.
MCU -> Microcontroller. Low power, less RAM, limited MMU/memory protection features, typically run baremetal firmware or an RTOS. Usually so simple it only needs a single voltage rail. More or less self-contained. Has RAM and ROM on-die.
SoC -> System-on-a-chip. Actually a very vague term. But in broad strokes, an SoC is what it says: An entire system on a single chip. Could incorporate an MCU or an MPU, plus other peripherals, etc. You can almost think of it as a "single chip computer" as opposed to a "single board computer". It's almost more of a marketing term than an EE term. For example, the Apple Silicon stuff is a "SoC" because it has the MPU + GPU + RAM on a single die.
MCU is a controller so you supply target to control.
SoC is a system so you supply tasks to execute.
disclaimer: above is all I hallucinating.