Preheat oven to 350°. Spread walnuts on a parchment or silicone-lined rimmed baking sheet. Bake for 10 minutes, or until walnuts are toasted and fragrant, stirring every 5 minutes. Check walnuts every few minutes to prevent burning. Cool to room temperature and chop. Store in a covered container until ready to use.
Fill a large bowl with ice water. In a small bowl, combine 2 Tbsp milk with cornstarch, whisk and set aside. Combine remaining milk with heavy cream, sugar and honey in a medium saucepan and place over medium heat. Bring milk mixture to a low boil. Cook until the sugar and honey dissolve, 3 minutes.
Remove milk mixture from heat and gradually whisk in the cornstarch mixture. Return to a boil and cook over moderately high heat until the mixture is slightly thickened, about 1 minute. Pour into a medium bowl. Whisk in salt and rosemary. Set bowl in the ice water bath to cool, 20 minutes, whisking occasionally. Cover and refrigerate until well chilled, at least 4 hours or overnight.
Once chilled, pour ice cream base through a fine mesh sieve to remove rosemary pieces. Pour into an ice cream maker and churn according to the manufacturer's instructions. When churning is complete, gently fold in walnut pieces. Transfer to a freezer-safe container and freeze until firm, at least 4 hours.