This is intentional. Programs (like the
steamwebhelper) use multiple processes for security and stability purposes. If one process crashes, it doesn't take down the entire client; that process just restarts. Likewise, if someone finds a security hole, that exploit might be able to take control of one process - but only one process, and it wouldn't have access to data stored in other processes.
Also note that the total RAM used by these processes is not as high as it appears at first, because the processes share memory with each other. The total RAM is not the same as the sum of all the individual processes.
Other system processes like
rundll32.exe have two instances because two different programs are using it. If you add a 'command' column to task manager, or by using
Sysinternal's Process Explorer you can see the actual programs which run procesesse like rundll32. For exaple, you'll see the first
rundll32.exe has a command parameter: "C:\Program Files (x86)\Intel\Bluetooth\btmshell.dll",TrayApp and the second one - C:\Windows\system32\AmbRunE.dll,RunDLLEntry. Which are both legit.
TL;DR: multiple processes are OK and by design.
How does 'cpu started running slow ' manifest itself? What is the total % CPU load when you're not actually running any foreground apps, no program windows opened?