What is the difference between K-means and the Expectation-Maximization (EM) algorithm?

Free for the first 3 answer contributors

Interview question asked to Data Scientists interviewing at Niantic, SAP Concur, Google and others: What is the difference between K-means and the Expectation-Maximization (EM) algorithm?.