Best method to add style sheets into child theme?

Firstly, never add the stylesheet on header.php unless you have to. It is not the WordPress convention.

Secondly, adding stylesheet to header.php will cause certain problem like dependency hierarchy. Cause when you install any plugin and if it has its stylesheet then the dependency hierarchy is automatically managed by WordPress system by wp_enqueue_scripts hook.

Thirdly, by using wp_enqueue_scripts hook you can use WordPress default scripts and stylesheets which is kinda messy if you proceed to use it in the header.

Fourthly, (I’m not 100% sure) caching can be a problem if you use stylesheet on header.php.

And all those rule are applicable for themes as well as child themes and plugins.