It depends on what you want to do. For example, if you want to create an app for Windows, or use it to build project with Xamarin (convert to Android, iOS) then C# but if you want to write some libraries, work with different platforms etc. C++ is the right one.
However, remember there is no such a language which fits all, each one have their own pros and cons.
Both are very powerful languages. C++ is used to write other languages and is a superset of C. C# is part of the.NET group of languages so you can code in C# and get to a dot o file then blend your . o file with a VB .o and a Cobalt . o to create an executable file. More coders comfortable in .NET can end up with people all over the world coding on the same project. Leaders experienced in many languages can pick the best for the job.
C++ is core programming language. it's easy to understand and robust in nature.but if you require complex algorithms to write better switch it to C#.it is base language of .Net framework and we call the features and expanded area of .Net.so c++ can be only used to limited areas with specific usage like storage and gaming but C# is beyond all.