[SalesForce] Difference between lightning and ui tags

I've begun to work on lightning component last days ago and I wonder why two different tags exist for the same things. For example, what is the different between lightning:select and ui:inputSelect? All of them are used in lightning apps and more lightning:select already have "lightning style", so why should I use ui:inputSelect instead of lightning:select?
Thanks in advance.

Best Answer

You can find the answer in the Winter 17 release notes here

You can find base Lightning components in the lightning namespace to complement the existing ui namespace components. In instances where there are matching ui and lightning namespace components, we recommend that you use the lightning namespace component. The lightning namespace components are optimized for common use cases. Beyond being equipped with the Lightning Design System styling, they handle accessibility, real-time interaction, and enhanced error messages.