At first melt chocolate on double boiler i.e place the bowl of chocolate on hot water and then cook on medium heat until it melts completely.
Take a large mixing bowl and cream butter and sugar together using electric beater.
In a separate bowl prepare dry mixture of flour, baking soda and salt and sift them together so that they mix well.
Now add egg yolks one by one to butter mixture and beat for 5 mins.until become fluffy.
Then add melted chocolate and buttermilk to the batter and beat just to incorporate the chocolat with the mixture.
After that gradually pour the dry mixture to the batter and mix using flat spatula so that no lumps of flour would remain in the batter and it becomes smooth.
Now beat egg whites for 3-4 mins. until peaks would form and then fold it into the batter.
Pour the cake batter into a suitable cake pan and place it on preheated oven for 30-40 mins. at 350 degrees F.
When the cake become ready take it out from oven and cool it to room temperature.
To prepare frosting mix milk, sugar, cream, butter and vanilla and cook on medium heat for 10-15 mins. until become thick and creamy.
After that remove it form heat and cool it to room temperature then add coconut, almonds, cashews and pecans
Now Pour the prepared frosting onto the top of German chocolate cake. Place the cake in fridge for 30 mins. until the frosting becomes set and then serve.