1) Your second line should be
UINavigationController * navController = [[UINavigationController alloc] initWithRootViewController:videoListVC];
2) In case you don't use ARC, you should release your VideoListVC and navController at the end, because videoListVC is retained due to the initWithRootViewController call, and navController is retained due to addChildViewController.
3) I don't know if this is important, but Listing 14-1 of Apple's View Controller Programming Guide for iOS shows another sequence when adding a childVC:
[self addChildViewController:content]; // 1
content.view.frame = [self frameForContentController]; // 2
[self.view addSubview:self.currentClientView];
[content didMoveToParentViewController:self]; // 3
Hope this helps.