Con CSS Grid a la vuelta de la esquina en cuanto a soporte cross-browser, podemos ya considerarlo para centrar horizontal y verticalmente. De todos los artículos escritos anteriormente esta es lejos la manera más simple y fácil de lograr centrar un elemento respecto de su contenedor.

HTML:

<div class="container"> 
  <p class="centered">Centrado con CSS Grid</p>
</div>
.container {
  height: 100%;
  display: grid;
}

.centered {
  margin: auto;
}

Codepen

Link ejemplo