C# has the DateTime type and TimeSpan for this. TimeSpan is not always the best choice and in many cases its better to just use a DateTime and ignore the date part.
The DateTime Class in C# has a .Date for extracting just the date component and a .Time For the Time part (returning a TimeSpan class)
In SQL you can use DATE and TIME or DATETIME.
You can save a C# DateTime into a DATE,TIME or DATETIME (loosing the part you don't need)
In summary I would suggest using a C# DateTime for the Date and a TimeSpan for the time. And Saving them into SQL as a DATE and a TIME. But you will need to be carefull with TimeSpan as the TimeSpan Is not 100% comparable with SQLs TIME. A TimeSpan in C# can be for more then one day but a time TIME in SQL can only be for one 24 hour period.
Lastly if you have already chosen to use a DATETIME in SQL then why dont you just use a DateTime in C# you can merge the Date And Time thet you get from the UI into one DateTime and just save that in an SQL DATETIME.