Just for 2 people, with an occasional "let's play this together 1,2,3,4...", and to be able to play in real time, with reasonable (not great) fidelity
If the teacher has an electronic instrument and considerable practice (like on big organs) of dealing with the sound of their instrument coming late, you can make this work by sending the teacher's sound only to the student and sending both teacher's sound and student's sound back to the teacher's headphones.
That way the teacher (who should be the most capable musician) will be the one having to deal with the unavoidable latency. The teacher can practice this with a digital delay, of course.
With mutual headphones, there also is the possibility for using no mixing at the student's side, but having the teacher put his own play to his headphones with a delay mostly corresponding to the two-way latency. That will give the teacher a smoother behavior to work with but will make it harder for them to detect when the latency varies. You can also mix both in the headphones (preferably with the locally delayed version at lower volume) to have a backup response in case the round-trip has dropouts.
All of this does not avoid latency (physics is a beast) but makes the teacher have to deal with it alone.
Zoom's "advanced" setting to preserve original sound might be useful for music lessons, but I have not tried it. If it works for you, it might save you and your students some configuration wrestling.
JamKazam has a rich user interface and many users, but the developer seems to have it on a back burner. Support is mainly user-to-user, via either global chat or in-session troubleshooting. The servers didn't keep up with demand on March 17-18. Each day since then I've found a decent multiuser session but had to play ~50 ms ahead of what I heard or else the tempo would drag. In ideal conditions I guess I could get 20 ms latency.
SoundJack looks like a research project, with a spartan user interface and few users, but the developer is actively supporting it. It can do delay compensation as this answer suggests. I have only played a solo test session there, but the tutorial videos are sufficiently thorough that I think I could have a successful duo session.
In any case, both participants should use headphones to avoid feedback and an Ethernet cable to avoid wi-fi jitter. If a computer has no Ethernet jack, try a USB or Thunderbolt Ethernet adapter.
There is no such thing an "no latency". That depends on a lot of factors like relative distance and bandwidth of service. For example if you are in the US trying to jam with someone on the other side of the world I think physics puts a 0.5 sec (or 1.0 sec) latency. That isn't too bad during a phone call but if you're playing fast music you will fall out of sync. I have had bad experiences with Zoom (as have some of my instructors) Skype works and so does WhatsApp and Facetime. In my experience any one of these can freeze so it's not fair to list one as better than an other. We can only share personal experience. I get occasional freezing with Skype, very bad connection on WhatsApp (usually video freezes and sound keeps going), and I recall Facetime being good. It might also depend on platform, Mac versus Windows PC but I'm not sure about that.
For audio, I have enjoyed successful band rehearsals spanning a small country. I used (free) Jamulus internet rehearsal software with a cheap low-latency audio interface (Focusrite or similar). Our round trip latency including the network and audio interfaces was under 40ms, maybe closer to 30ms. I set up my own "central server" for the clients to connect to, but there are public ones by default.
Another alternative is SoundJack, but when I signed up to that service I received an alert from gmail about attempted access to my email.
I am fortunate to have a very low latency internet connection (fibre to the home), and my bandmates have good wired connections (copper to the home, fibre to the cabinet). None of us share our connections with demanding users during sessions. We all used ethernet cables, not WiFi.
You could combine that with a standard video call for teaching purposes, but I'd recommend using a separate device (e.g. your cell phone) and separate internet connection (e.g. again, your cell phone).
The recommended products from my music school (which closed its doors and told all teachers to go online with their students) include FaceTime, Zoom, WhatsApp, and Skype.
Unfortunately, which one works best for you depends on the connection data rate available at your end and at the student's end, so there is no guaranteed best for all situations.
All the responses have value, here is my response. I have been taking taking lessons over the internet for 3 years now. My teacher and I have tried Skype, Zoom, Google Hangouts, and Webx.
Our hardware is MacOS (my end) with a Logitech HD camera. It attaches via an HDMI port. My teacher has an older model Windows machine, and uses the same camera I do. I recently added some low end speakers to play and listen to the output. I have high speed internet, my teacher has moderate speed internet.
The best continued choice of conference tool for us, both of us are west coast, is the Zoom application. It's free for using less than 3 people at a time. A very close runner up was Google Hangouts.
We have some latency, but we are able to play together as long as the weather doesn't become too bad. That will cause us difficulty. It is NOT perfect. Both Zoom and Google Hangout allow you to share your desktop so if you want to collaborate on anything.
I would love to hear from someone who has an technical answer to play together and could eliminate all latency.
Good Luck! Happy Playing! ~catz
Unfortunately the 'packet-switching' basis of Internet communication guarantees a packet of data will get there (just about) but makes no promises about WHEN it will arrive. Buffering techniques allow the illusion of a constant data stream, but it WILL be delayed. Maybe by little enough to allow a two-way conversation without annoying gaps. But a simultaneous '1,2,3,4' to musical standards of timing just isn't going to happen. Sorry. Teach in a way that doesn't need it.
Jammr may work for you for playing together. There's no latency but the other player's track plays at a different time in real time but the same time on your machine. You can adjust interval delay but if you use Zoom and not the Jammr chat window to communicate with your student then you'll need to mute Zoom when you're both playing together.
You can make your lesson private by installing the Premium version which for the moment appears to be free.