The easiest way to do this would be to use existing software dedicated to more or less this purpose. I think the major cross-platform protocol for such things is UPnP or DLNA, the latter being essentially an extension of the former.
In addition to Kodi, there are a variety of DLNA servers available for GNU/Linux; that is just one list and I am sure you can find others.
If you wanted to rig something up yourself instead, there is no end of approaches you could take. As per my earlier comments, there are a range of pretty much stock mainstream GNU/Linux distros for the pi -- the exact same OS's that account for (perhaps) most of the internet servers in the world, which would mean this question is more like, "What are all the possible ways of streaming video from an inet server?". It would make much more sense if you pick a methodology, any methodology, and then ask if it is feasible on the pi.
There can be up to 30 users who will be streaming the videos
If you really need to do that often (or even just occasionally), I think you will be better off investing in some heftier hardware than the pi.
All pi's have 100BASE-TX ethernet, meaning in theory up to 100 Mbps. Looking at this chart, one full HD stream is likely to be 5-10 Mbps. If, for sake of an arbitrary "reality factor", we halve the first number and use the high-end of the second one, you at best will be able to serve less than half a dozen people.