Garcia, 23, joins the Romanian side after five years on the books of Manchester City.
The central midfielder made nine appearances for City’s first team under Manuel Pellegrini and Pep Guardiola.
After two loan spells with Girona, Garcia spent last season in Belgium with Mouscron where he made a good impression.
Garcia will now continue his career with 18-time Romanian league champions Dinamo Bucharest.
The club’s sporting director Rufo Collado is Spanish and played an instrumental part in signing Garcia.
Former Villarreal player Garcia had interest from across Europe, including Spain, Turkey and Greece.
Garcia’s contract with Dinamo will run until the end of the 2020-21 season.