Is it possible to draw a finite or infinite set S of points in the plane, such that any line drawn in this plane neither intersects with exactly one point in S or an infinite number of points in S?
I believe the set of points (x,y) such that $x y = ±1$ satisfies the conditions.
The set consists of 4 segments of hyperbolas. Any straight line crosses at least 2 of these segments resulting in 2 to 4 intersections. Except for the lines x=0 or y=0 which cross none.
It is not possible with any finite or countably infinite set.
Take any point P in the set. For each other point Q in the set, draw a line between P and Q. Then take the angle between line PQ and the horizontal axis. This forms a set of angles A.
If S is countable, then the set of angles A must also be countable (since there is at most once angle per point in S). However, since angles are real numbers, and the real numbers are uncountable, by Cantor's diagonal argument we can construct some angle x not in our (countable) set A.
If we take the line going through the point P at the angle x, then this new line will not pass through any other point in the set; if it did, then its angle would have been in set A. Therefore, we have constructed a line that intersects exactly one point of the set S.
Since this is not allowed, and the only assumption we made about S was that it was countable, it must be the case that S is infinite and uncountable.
To rule out @hexomino's trivial solution (empty set) let us require that every straight line intersects S in fintitely many and at least 2 points.
Then one simple way to construct S is
using two shifted disjoint copies of the graph of the function y=x3, for example y±(x) = x3±1. Any straight line is either vertical and will intersect both graphs at the same x-offset or of the form yL(x) = ax+b. As each of yL(x)=y+(x) and yL(x)=y-(x) has between 1 and 3 solutions we get between 2 and 6 intersections.