Graph: Sparse vs Dense

A sparse graph is one where there are relatively few edges, i.e. $M$ is closer to the lower bound $\Omega(N)$.

A dense graph is one where there are many edges, i.e. $M$ is closer to the upper bound $O(N^2)$.

Graph representation (implementation) choice will depend on whether the problem at hand is more likely to be a sparse or dense graph!

If your graph is sparse, adjacency list representation will be more efficient (in terms of space complexity).