The trial of Silvio Schulz, 33, started under tight security in a court in Potsdam near Berlin after news of the killings shocked the country last year.
Schulz is accused of kidnapping the children — four-year-old Mohamed from Bosnia, and German boy Elias, aged six — in order to sexually abuse them, then killing them to avoid being identified and caught.
The hand-cuffed defendant wearing a hooded jumper covered his face with a paper folder when he entered the courtroom Tuesday, as bereaved victims' relatives looked on.
He faces life in prison if found guilty.
Schulz was arrested by Berlin police in late October after his mother identified him from security camera images published by police.
Police said he admitted to abducting and abusing Mohamed before strangling him to death with a belt and also confessed to the murder of Elias.
Prosecutors say Schulz abducted Elias from a Potsdam playground in July 2015 before strangling to death the screaming child and burying his body in a rented garden plot.
In early October he kidnapped Mohamed from the crowded and chaotic area outside Berlin's Lageso registration centre for asylum seekers.
The Lageso office was overwhelmed by record numbers of migrants as Germany took in more than one million asylum seekers last year.
As migrant families slept outside Lageso in the dust, and frustrated refugees sometimes brawled as they waited for days for an appointment, parliamentary vice president Claudia Roth condemned the conditions there as “shocking and unworthy of a democratic society”.