What is the Difference Between matmul and dot

From the Documentation i get :
matmul differs from dot in two important ways.

  1. Multiplication by scalars is not allowed.
  2. Stacks of matrices are broadcast together as if the matrices were elements.


Cannot wrap my head around how in 2d they are the same and in 3d matmul will not work.
Any real world example or use case?
Also there is a warning about the function being “preliminary” is this not included in the Numpy GA? what are we supposed to use and rely on dot or matmul?