Consider a solved Sudoku puzzle. Then, remove one number. Does the resulting puzzle still have exactly one unique solution? Yes, of course.
What if you did this over and over again until you had a puzzle who still had a unique solution, but any further removal resulted in a non-unique solution?
That puzzle would be what I call a "minimal" Sudoku puzzle, one that gives as little information as possible while still being unique. This program automatically generates minimal Sudoku puzzles, using backtracking and recursion.
Download, open in Visual Studio, and run.