Prince Harry has said he was "glad" to join the funeral cortege for his mother and praised the role his father played in helping the family deal with the death.
Following his previous comments that walking behind the coffin of Princess Diana at the age of 12 was what no child "should be asked to do" he said now he doesn't "have an opinion whether that was right or wrong".
"It wasn't an easy decision and it was a sort of collective family decision to do that... there is that balance between duty and family and that's what we had to do," he told the BBC documentary Diana, 7 Days, to coincide with the 20th anniversary of her death.
He said when he heard about the death he felt "disbelief, refused to accept it but he was full of praise for his father Prince Charles' support.
"One of the hardest things for a parent to have to do is to tell your children that your other parent has died. How you deal with that I don't know. But, you know, he was there for us."
Meanwhile William described how was he "very touched" by the flowers and notes that had been left outside the gates of Balmoral although none of it sank in.
"All I cared about was I'd lost my mother and I didn't want to be where I was. When we go out and do things like that, in order not to completely and utterly break down we have to put on a bit of a game face.
"And you have to be quite strong about it because otherwise you're a walking mess."
The princes said that the Queen did the right thing in keeping them away from London in the immediate aftermath of the death, despite public pressure.
William said: "I think it was a very hard decision for my grandmother to make. She felt very torn between being a grandmother to William and Harry and her Queen role."
William also said it was "peculiar" seeing people wailing who had never met their mother.
"People wanted to grab us, to touch us. They were shouting, wailing, literally wailing at us, throwing flowers, and yelling, sobbing, breaking down, people fainted, collapsed," the Mirror reported.
The 90-minute documentary will be broadcast on Sunday 27 August.