We propose a discrete choice model of sustainable transitions from dirty to clean technologies. Agents can adopt one technology or the other, under the influence of social interactions and network externalities. Sustainable transitions are addressed as a multiple equilibria problem. A pollution tax can trigger a sudden transition as a bifurcation event, at the expenses of large policy efforts. Alternatively, periodic dynamics can arise. Technological progress introduced in the form of endogenous learning curves stands as a fundamental factor of sustainable transitions. For this to work, the positive feedback of network externalities and social interaction should be reduced initially, for instance by promoting niche markets of clean technologies and making technological standards and infrastructure more open. Traditional policy channels such as pollution tax and feed-in-tariffs have an auxiliary - yet important - role in our model. Compared to feed-in-tariffs, a pollution tax promotes smoother and faster transitions.