Killing the process is not going to change things. The ROLLBACK must be performed to being the database to a consistent state.
Restarting SQL Server will change things a little. The process will be gone, but the rollback still needs to be done. It will be performed during recovery, and it can often be faster. But it can also mean that it takes a long time before the database comes online.
Right now, the database is accessible, but locks related to the transaction being rolled back, can block other processes.
A special situation is when someone gets the idea to kill a process that is stuck somewhere outside SQL Server. That is, in a Windows API call or access to a linked server. Because the process is executing outside SQL Server it never gets to know that it is killed. (SQL Server uses co-operative multitasking. There is no kernel that can evict threads.) In situations like this, restarting SQL Server is often the only way out. (Unless you can the the process on the remote server and kill that one.)