I would like to know the differences between:
Will these all determine the same boundary decisions?
You can see in the user guide that the first two will not produce the same results. In the multiclass setting, LinearSVC uses one-vs-rest while SVC uses one-vs-one. Aside from that, the solver used is also different, and because of that some of the options differ. See LinearSVC docs, SVC docs.
I suspect the third will be the same as the second. I don't see anything in the source to indicate it quickly, but it shouldn't take long to test.