By July this year mobile firms will be forced to lower the prices of making a call or downloading data abroad.
Under new rules agreed by the European Parliament, consumers will pay no more than 29 cents (24p) per minute to make a call and 70 cents (59p) per megabyte for data downloads across Europe.
Many customers have faced bills for thousands of pounds after falling foul of current high roaming charges.
"Consumers are fed up with being ripped off," said commissioner Neelie Kroes.
The European Commission vice-president for the Digital Agenda added: "The new roaming deal gives us a long-term structural solution with lower prices, more choice and a new smart approach for data and internet browsing."
Currently, the limit on what can be charged for making a call is about 30p and sending a text 9p, but there is no cap on what companies can charge per megabyte of data. Under the new rules the cost of sending a text will fall to 7.5p.
By July 2014 customers will also be given the option to shop around for the best deal and sign up for a separate mobile contract using their existing number when going abroad.
They will also have the option to directly select a local mobile network in the country they are visiting.
The new roaming charges will progressively go down and by July 2014 the aim is that roaming consumers will pay no more than 19 cents (15p) to make a call and 20 cents (16p) per megabyte of data. The cost of receiving a call will fall to 5 cents (4p) and sending a text to 6 cents (5p).
For citizens travelling outside the EU, there are plans for better information about roaming charges to avoid "bill shock".
From July this year, people will get a warning text message, email or pop-up window when they are nearing 50 euros (£41) worth of data downloads
The new rules come at a time when users are consuming ever more data on mobiles and tablet devices. As 4G networks offer even faster download speeds, data consumption is expected to rise exponentially.