Glamorgan will host four ICC Champions Trophy matches at the SSE Swalec Stadium in June 2017.
The games include England's group game against New Zealand and one of the semi-finals.
One fewer match than in 2013 will be staged in Cardiff because of a clash with football's Champions League final.
The European showpiece is being held at the nearby Principality Stadium on 3 June 2017.
The Oval and Edgbaston will also host games in the tournament.
Cricket's 50-overs international competition features the top eight sides in the world in the one-day format.
World T20 champions West Indies have missed out on qualification after recent poor results.
Glamorgan chief executive Hugh Morris said: "We are delighted to be welcoming some of the world's best players to the Welsh capital.
"I was with England for the last tournament here, and for teams, administrators and supporters alike the compact nature of the competition, where every match really counts, captured the imagination of thousands of supporters.
"By hosting major global events such as the ICC Champions Trophy and the ICC World Cup two years later, the eyes of the world will be on Cardiff."
The semi-final in Cardiff could see Australia play South Africa if the results were to go according to seedings.
England play New Zealand at the Welsh venue in their second group game, a repeat of the 2013 tournament encounter which saw England win by 10 runs.
The last event also saw a dramatic tie between South Africa and West Indies, who lost a crucial wicket just before rain forced a Duckworth-Lewis calculation.
2017 ICC Champions Trophy games in Cardiff
England v New Zealand, Tuesday 6 June
New Zealand v Bangladesh, Friday 9 June
Sri Lanka v Pakistan, Monday 12 June
Winner Group A v Runner-up Group B, Wed 14 June