Hyperplane through origin which goes through most number of points
I suspect your problem might be hard, for the following reason:  The corresponding problem when working over a finite field is NP-hard.

Your problem is equivalent to the following:

Inputs: a $M \times N$ matrix $A$, with real-valued entries
Goal: Find $x \in \mathbb{R}^N$ that maximizes the number of 0 entries in $Ax$

The corresponding problem for a finite field (e.g., working with integers modulo a prime $p$, rather than real numbers) is known as the minimum-weight codeword problem for linear codes, and it is known to be NP-hard.  See, e.g., 
https://cs.stackexchange.com/a/59922/755,
Solving/Optimizing a linear system in a finite field (Z/2Z),
https://cstheory.stackexchange.com/q/27460/5038,
https://cstheory.stackexchange.com/q/21678/5038.
It's always possible that the problem is dramatically easier for real numbers than over a finite field, but that seems like it might be a lot to hope for.

Anyway, I don't know if there are algorithms with running time better than $O(M^N)$, but I suspect it's hard (not likely to have a polynomial-time solution).

See also https://cstheory.stackexchange.com/q/3719/5038 for a related but different problem.